ブログみるアプリ
日本中の好きなブログをすばやく見られます
無料ダウンロード
ブログ村とはIDが異なります
メインカテゴリーを選択しなおす
フォロー
CoreDataとマルチスレッド
CoreDataはスレッドセーフではない。 NSURLConnectionで非同期に落としてきたデータをManagedObjectに詰めていると、 Saveのタイミングでたまに落ちる。 とりあえずここに乗っていた方法で解決できそう。 要
2011/08/31 08:51
navigationBarとtabBarの高さ
CGFloat navigationHeight = [[[self tabBarController] rotationgHeaderView] frame].size.height; CGFloat tabHeight = [[[self tabBarController] rotationgFooterView] frame].size.height; で取得できた
2011/08/31 07:47
layoutSubviewsでscrollviewのframeを指定すると
動かない。 layoutSubviewsでscrollviewのframeを指定すると bounceがきかなくなる。 結構ハマった。 通常のscrollはできるのだが、 bounceアニメーションはsetFrame でリセットされてしまうようだ。
2011/08/30 12:50
UIButtonにSubviewを追加する。
UIButtonにsubviewを追加したらボタンが押せなくなった。 試しにsubviewをボタンの左半分だけの大きさにしてみる。 右半分は押せる。左半分は押せない。 subviewがイベントを横取りしているようだ。 [subv
2011/08/29 23:01
initメソッドの中で成すべきこと
initメソッドの中では何をすべきか。 何もすべきではない。できる限り。 動的言語であるobjective-Cの基本思想は「使う時に作る」「必要なら呼ぶ」だ。 初期化の時点であれこれ用意するのは好ましくない。
2011/08/29 20:18
retainなる自前setter
しまった。 自前でsetterを用意する際に - (void)setMyProperty:(id)newValue{ [myProperty release]; myProperty = [newValue retain]; } としてしまっていたが、 これだと2回連続で呼ばれ
2011/08/28 21:45
objective-Cにおけるオーバーロードの是非
厳密に言えば、objective-Cでオーバーロードを行なうことはできない。 そもそもオーバーロードとは、多重定義の一種で、 同じ名前の、異なる引数を用いるメソッドを定義することを言う。Javaなどでよく使われる
2011/08/28 18:05
適切なる命名
どのように命名を行なえばいいのか? という問いに対する答えは簡にして素にして明快だ。 「コンテキスト内での一意性を保証する名称のうち、最も短く最も抽象的なもの」 である。 順に説明していこう。
2011/08/28 09:51
DTOとしてのNSDictionary
NSDictionaryの中身は変更できない。 ゆえに使い回しはきかない。しかし一時的に使うには便利だ。 例えばデータの受け渡し。 データが変更されていない、という保証は大きなアドバンテージだ。 内容証明付きの
2011/08/28 07:51
UIImageに影をつけて角も丸くする
丸くすると影がつかない。 影をつけると丸くできない QuartzCoreを使えば CALayerのshadowとcornerRadiusを変更できるが、同時には適用できない。 角丸を有効にするためにsetMasksToBoundsをYESにすると、 sh
2011/08/27 19:51
delegateとnotificationとKVO
オブジェクトの連携には3つの方法がある。 delegateとnotificationとKVO(Key-Value Observing)だ。 どれも同じようなことができるのだが、 何が違うのか、どう使い分けるべきかを考えてみることにする。 こ
2011/08/27 17:18
2011年8月 (1件〜100件)
「ブログリーダー」を活用して、てくてくさんをフォローしませんか?