hachinoBlog

hachinobuのエンジニアライフ

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

deviceToken(NSData型)をNSString型に変換する際

NSData型は本来であれば NSData* aData; aData = [aStr dataUsingEncoding: NSASCIIStringEncoding];上記でNSString型に変換できるが、deviceTokenには先頭に 終端に > 文字列の間に空白が入っているので上記の変換方法でやってもnullが返ってきてしまう。 …

NSUnknownKeyExceptionについて

起動画面のViewControllerをMainWindow.xibから修正してアプリを起動させたら、 NSUnknownKeyExceptionでアプリがこけた。 ぐぐるとアウトレットとして宣言してあるプロパティの名前が、nibファイル内に記録されている情報と食い違っている場合に起こる現象…

共通のint型変数などを他のクラスと共有したい場合

int型とかを@property する場合は @property (readwrite) int num; のように(readwrite)で宣言してあげると警告がでない。

テーブル表示でメールアプリのように右側に件数バッジを出す方法

オープンソースで既に実装してくれている人がいるので、そのAPIを使用すれば簡単。 参考URL http://golog.plus.vc/iphone/objective-c/1349/ ←はセルとして定義しているので今の自分のスキルではバッジのViewだけを抜き出すのは無理だったorz http://akabeko…

plistからテーブルに表示する際のセクション順指定

まずplistから情報を読み込んでNSDictionaryに突っ込むが、格納される順番はplistの順番じゃない。 //情報をplistから取得 NSString *filePath = [FileUtils makeResourceFilePath:sample.plist]; NSDictionary *sectionDic = [[FileUtils dictionaryWithCon…

UIViewで後ろにあるViewを認識させる方法

UIViewのaddSubViewでViewを載っけた時、載せたViewのサイズがでかいと その下にあるViewのボタンなどを押しても認識されなくなってしまう。 だけど、UIViewのsetUserInteractionEnabled:NOに設定すれば後ろにあるViewも認識するようになる。…こんな簡単なこ…

xibファイルでCustomを利用すると

addSubViewしちゃうとその下側にあるViewを制御できなくなってしまう場合。 (UIScrollViewの上にViewを載せた場合とか) そういった時はxibファイルのCustumクラスで専用のクラスを指定する。 例: UIViewを継承したクラスを作成して、そこに図形を描く処理…

UINavigationBarにUIBarButtonItemを複数埋め込む方法

はまった。。 UIViewにUIBarButtonItemをaddSubして、そのViewをNavigationControllerのrightBarButtonItemに 突っ込めば良いと思ってたけど、そもそもUIBarButtonItemはUIViewにaddSubできない。。色々試したけあげくたどり着いたのはUIToolbarを定義して、…

push通知実装時の初回起動時表示アラートの出し方

push通知機能を使用したアプリで初回起動時のみに表示される確認アラート。 このアラートは本当に初回起動時にしか表示されず、アプリを一度削除して、再度インストールしても、このアラートは二度と表示されない。再度表示した場合は次の手順を踏む ・その…

Code Sign Errorについて

Code Sign Errorにハマった Code Sign error: Provisioning profile 'develop' specifies the Application Identifier 'jp.develop.jsap' which doesn't match the current setting '.test.jp'これはプロジェクトのCode Signingで指定しているProvisioning F…

iOS5でキーボードを出すたびにTextViewがズレる問題

iOS5になってUIKeyboardWillShowNotificationの扱いに変化ありここのサイトに詳しく書いてある http://d.hatena.ne.jp/k2_k_hei/20111023/1319378195

CGRect型をログ出力するには

NSStringFromCGRectでCGRect型を変換する CGRect frame = cell.frame; NSLog(@"%@",NSStringFromCGRect(frame));参考URL http://d.hatena.ne.jp/rika_rifan/20101116/1289890698

UIActionSheet,UIAlertViewでの注意点

UIActionSheetのボタンを押すとデリゲート先の (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex { に飛んでいくが、ここで(NSInteger)buttonIndexを使用してボタンごとの動きを指定する場合は必ず if (buttonI…

UIBarButtonItemを消す方法(UIToolBar上)

UIButtonはHiddenがあるから表示・非表示の切替が出来るがUIBarButtonItemはHiddenがない。 (せいぜいsetEnableで押せなくするくらいで消したりできない)その場合はUIToolBarから指定して消してあげる方法をとる※ツールバー上の一番右側にあるボタンを消す…

Program received signal: "SIGABRT"について

Program received signal: "SIGABRT" こいつが出るのは.xibファイルとの紐付けがおかしい場合に出るみたい。 たとえばxibファイルで定義してソースファイルと紐付けたが、後に不必要と分かりソース上から消しても xibファイル側の紐付けが残っている場合にこ…

DBから取得した値をTableViewのSectionとして扱う方法

- (id)initWithFetchRequest:(NSFetchRequest *)fetchRequest managedObjectContext: (NSManagedObjectContext *)context sectionNameKeyPath:(NSString *)sectionNameKeyPath cacheName:(NSString *)name;上記メソッドのsectionNameKeyPath:(NSString *)に…

UITableView参考URL

基礎はここが分かりやすい http://konton.ninpou.jp/program/cocoa/userinterface/UITableView/UITableView1.html

UIWebViewでHTMLに記載されたリンククリック検知

読み込んだHTMLのリンクとかがクリックされた場合の文字列等は UIWebViewの - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {デリゲートメソッドで検知…

UIButtonについて裏技

非公開APIを使うとUINavigationの戻るボタンの形を再現できる http://d.hatena.ne.jp/KishikawaKatsumi/20100507/1273198706でも審査とおらないらしい。。 意味ないじゃん。。。

画面遷移時にMemory Warningが出るときの対処

UINavigationControllerの戻るボタンで画面遷移する毎にmemory warning(メモリ警告)が発生したので 遷移元(戻るボタンを押した画面)のViewControllerにて - (void)viewWillDisappear:(BOOL)animated { [self.view removeFromSuperview]; //[self release]; }…

エンジニアブログ始めました

今日からエンジニアとしてブログを開始します。 主にObjective-Cについて。 自分のメモ的な要素がでかいかな。。続けるぞー!