2014-01-01から1年間の記事一覧

撮影画面でデバイス回転を禁止するには

UIImagePickerControllerを継承したクラスを作成し、そちらを使用します。 XXXCameraViewController.h #import <UIKit/UIKit.h> @interface XXXCameraViewController : UIImagePickerController @end XXXCameraViewController.m #import "XXXCameraViewController.h" @inter</uikit/uikit.h>…

LaunchPadから任意アイコンを削除する方法

LaunchPadから任意アイコンを削除する方法 - Handwriting sqliteのデータをいじり、消しました。

カスタムキーボードの領域高さを変更する

swiftで、これで成功しました。 override func viewDidAppear(animated: Bool) { let heightConstraint = NSLayoutConstraint( item:self.view, attribute:NSLayoutAttribute.Height, relatedBy:NSLayoutRelation.Equal, toItem:nil, attribute:NSLayoutAttr…

カスタムキーボード作成時エラー

iOS8から作成可能なカスタムキーボードを作成している時に Embedded binary's bundle identifier is not prefixed with the parent app's bundle identifier. が出た時の対応。 カスタムキーボードのTargetのバイナリ名を変更しました。 (本体となるTargetか…

iOS系開発実績一覧

クイズアプリ(消費型アプリ内課金機能とFacebook・Twitter・メールアドレスログイン機能実装を担当。サーバ側APIもC#で実装) 薬歴記録アプリ(企業向けiPadアプリ。Windowsサーバ連携。SQlite使用。) 天気予報アプリ(外部APIより天気情報取得) 連絡先テキスト…

iOS8にてpresentViewControllerで元画面を見えるようにする

[viewController setModalPresentationStyle:UIModalPresentationOverFullScreen];

NSNumberのNSMutableArrayのソート

// 昇順 NSArray *numbers = [numbers sortedArrayUsingSelector:@selector(compare:)]; // 降順 NSSortDescriptor *descDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"self" ascending:NO]; NSArray *numbers = [numbers sortedArrayUsingDescri…

NSArray内容をカンマ区切り文字列へ変換

//NSArray->NSString NSString *str = [array componentsJoinedByString:@","];

XCodeでTargetを複数作った場合に動作を分岐させたい

XCodeでTargetを複数作った場合に、動作を分岐させたい。 その時に使ったのがこの設定。 各TargetのBuild SettingsのPreprocessing。 IS_FREE = 1 など定義し #if IS_FREE == 0 とソース内で判定する。

ARCファイル単位での設定

// ARC を有効化したい場合 -fobjc-arc // ARC を無効化したい場合 -fno-objc-arc

UITableViewの編集モード時に詳細ディスクロージャーボタンを表示

こちらを参考にさせて頂きました。 http://d.hatena.ne.jp/yamashina/20111121/p1 通常時はチェックマーク、編集時は詳細ディスクロージャボタンを表示 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)inde…

ファイル存在判定とリネーム

ファイル存在判定 NSFileManager *fileManager = [NSFileManager defaultManager]; BOOL isExist = [fileManager fileExistsAtPath:dbPath]; リネーム if ([fileManager fileExistsAtPath:originalPath]) { BOOL isSuccess = [fileManager moveItemAtPath:or…

開発機でのiPhoneシミュレータのパス

/Users/xxx/Library/Application Support/iPhone Simulator/7.1/Applications/XXXXXX-XXXX-XXXX-XXXX-XXXXXXX/xxx.app/ 7.1の場合です。

NSUserDefaultsの内容をクリアするには

NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier]; [[NSUserDefaults standardUserDefaults] removePersistentDomainForName:appDomain];

MKMapViewの座標中心にピンを立てる

マップビューから中央の座標を取得し CLLocationCoordinate2D val = self.mapView.centerCoordinate; そこにピンを立てる MKPlacemark *placemark = [[[MKPlacemark alloc] initWithCoordinate:val addressDictionary:nil] autorelease]; [mapView addAnnota…

XCodeのBuild Settingsでの変数

${SRCROOT}便利。

zxing '__CHECKSUM_EXCEPTION_H__' is used as a header guard here 対応

http://stackoverflow.com/questions/22411565/build-error-on-ios-7-1-zxing ここの対処方法でビルド通りました。 ZXingWidget frameworkを選択 ZXingWidget framework内のZXingWidget targetを選択 Build setting タブを選択し"other wa"で検索 -w paramet…

UItableViewの空行の罫線を消す

Footer指定でいけます。 UIView *footer = [[UIView alloc] initWithFrame:CGRectZero]; footer.backgroundColor = [UIColor clearColor]; [self.tableView setTableFooterView:footer]; [footer release];

クラスインスタンスの種類を判定

NSStringFromClass([クラスインスタンス class])

文字列でクラスのプロパティにアクセスする

[obj setValue:値 forKey:プロパティ名]; これで文字列指定によりプロパティに値を代入できます。 実際に連番のプロパティに対して使ってみた例 MyClass *obj = [[MyClass alloc] init]; int index = 1; for (NSString *item in items) { [obj setValue:item…

長い文字列を複数行で記述するには

NSString *str = @"To be or " "not to be," " that is the question."; こんな書き方で分割できます。

AppDelegateインスタンスを外から参照する

xxxAppDelegate *appDelegate = (xxxAppDelegate *)[[UIApplication sharedApplication] delegate]; これで簡単に参照取れました。

BSTimeIntervalをNSStringに変換

Matthias Bauch氏の投稿より。 - (NSString *)stringFromTimeInterval:(NSTimeInterval)interval { NSInteger ti = (NSInteger)interval; NSInteger seconds = ti % 60; NSInteger minutes = (ti / 60) % 60; NSInteger hours = (ti / 3600); return [NSStri…

NSLogをDebug時のみ出力するようにする

http://d.hatena.ne.jp/k2_k_hei/20120511/1336750473 こちらを参考にしました。

iPhoneキーボードの外をタップしてキーボードを閉じる方法

http://qiita.com/yuch_i/items/65baa9586afdfc6aeb34 参考になります。 複数のTextFieldがある場合にはどうしようか。 ベタに書くのもありだけれど。

UITableViewCell内のrecognizerタップイベントからタップ位置を計算する

recognizerで呼ばれるメソッドにて。 CGPoint p = [recognizer locationInView:self.mainTableView]; CGPoint offset = self.tableView.contentOffset; float pos_y = p.y - offset.y;

UITableViewのロード完了時に処理するには

http://stackoverflow.com/questions/1483581/get-notified-when-uitableview-has-finished-asking-for-data まだ未実験だが上記の情報でできそうだ。

設定値のキーと値をすべて見る方法

[[NSUserDefaults standardUserDefaults] dictionaryRepresentation]; デバッグ時はコンソールにて po [[NSUserDefaults standardUserDefaults] dictionaryRepresentation]

処理の遅延実行

[self performSelector:@selector(methodA:) withObject:nil afterDelay:0.1]; メソッドに引数を渡す場合はwithObjectに設定。

iOSアプリをコードから強制終了 するけれど...

exit(0); で、終了します。 しかしAppStoreのガイドライン違反なのでリジェクトされるようです。 企業向けアプリや実験時に。