2012-04-01から1ヶ月間の記事一覧
ViewControllerの初期化ではまったのでメモ。 ViewControllerのコンストラクタ内でViewの初期化をしようとするとViewが初期化されなかった。 理由はコンストラクタ内ではまだViewにオブジェクトが詰められていないため。 - (id)initWithNibName:(NSString *)…
EXEC_BAD_ACCESSの原因を調べるときはmalloc_historyを表示させると便利らしい。使い方は以下サイト参照。 http://snipplr.com/view/54151/
XcodeのデバッグはEclipseやVisualStudioに比べてかなりやりにくいと思う。 特に以下が困る。 ・変数に入っている値を変数ウィンドウで確認できない。コンソールでコマンドを打てば確認できるけど不便。。 ・ウォッチ式が使えない デバッガにはlldbとgdbがあ…
UIViewはデフォルトでは子Viewが親Viewからはみ出している場合、はみ出している部分も表示される。 これはclipsToBoundsプロパティをYESにすると表示しないようにできる。 参考:http://d.hatena.ne.jp/gutskun/20091125/1259125719 これはデフォルトをYESに…
下記のコードのaddSubviewしてるところでエラー。viewWillAppearが呼ばれたタイミングでエラーになるのかも。 SViewController *ctrl = [[SViewController alloc] initWithNibName:@"St" bundle:nil]; [cell addSubview:ctrl.view]; エラーメッセージは以下…
Stack Overflowの記事より プライベート変数に「_」プレフィックスをつけない .mファイル内の無名カテゴリにプライベートメソッドを宣言する deallocメソッドは@synthesizeを並べている部分のすぐ下に書く。理由は@synthesizeの一覧がdeallocすべき変数の一…
ちょっと便利そうなライブラリを発見。 https://github.com/kishikawakatsumi/DescriptionBuilder DescriptionBuilderを使うとdescriptionの実装が簡単にできる。 JavaなんかでもtoStringでオブジェクトの状態を書き出すのはよい習慣とされてたが今までほと…
下記の記事が参考になったのでメモ。 http://news.mynavi.jp/column/objc/022/index.html ・Objective-Cのメッセージ式は動的に名前解決をしてメソッドを呼び出す。 よってコンパイル時に呼び出すメソッドが決まらない、パフォーマンスが多少悪いという特性…
こちらの記事が非常に参考になったので覚え書き。 http://www.awaresoft.jp/ios-dev/item/115-ivar-naming-convention.html 1.インスタンス変数はヘッダファイルに書かない。プロパティ宣言だけでいい。 2. インスタンス変数とプロパティは別の名前にする。 …
GCのない言語を触るのは初めてなのでメモリ管理について調べてみた。 下記の記事が非常に参考になりました。ありがとうございました。 http://www.zero4racer.com/blog/88 1.retain, releaseを書かない 2.オブジェクト型を生成する場合は必ずプロパティを作…
各メソッドの先頭に以下のようなコードを追加するとメソッドが呼ばれる順序とかが追いやすいよ! - (void) viewWillAppear:(BOOL)animated { NSLog(@"calling:TestViewController viewWillAppear"); [super viewWillAppear:animated]; } cocoa touchはライフ…
uncaughtExceptionが発生したときにスタックトレースを出すには、以下の記事を参考にuncaughtExceptionHandlerを追加すればok http://www.zero4racer.com/blog/480 Xcodeでデバッグほんとやりづらい。。 特に変数の値を確認しづらい。デバッグ中に式を実行し…
cocoa touch標準のページめくりアニメーションは下からめくることしかできないので、 iPhoneを横にした時に右から左へページをめくる、といったアニメーションをするには以下のようにする必要がある。 NSView* parent = viewController.view; // the main vi…
iOS5から、addSubViewした時にviewWillAppearが呼ばれるようになった。 よってiOS4以前とiOS5の両方のバージョンで動作するようにするには下記サイトに書いてあるように分岐を作る必要がある。 http://hmdt.jp/blog/?p=261 上記サイトのやり方はバッドノウハ…
下記サイトが参考になりそう。 http://www.awaresoft.jp/ios-dev/item/114-ios4vs5-application-lifecycle.html http://d.hatena.ne.jp/k2_k_hei/20101025/1288004697 http://iphone-dev.g.hatena.ne.jp/paella/20090629/1246291917 上記のサイトでloadView…
最近仕事でObjective-Cを勉強してます。最初は「記法がきもい!あり得ない!」と思ってたけど最近なれてきた。 慣れって怖いね。。 Viewのライフサイクルメソッドではまったのでメモ。調査環境はiPad5.1シミュレータ ・ViewWillAppearは見た目上画面が表示さ…