てくてくのiphoneアプリ開発あれやこれや
https://plaza.rakuten.co.jp/tech1985/
楽天ブログ - てくてくのiphoneアプリ開発あれやこれや
ja
ニョホホホhoooo!
Copyright (c) ニョホホホhoooo!,Inc All rights reserved.
2011-09-03T19:50:12+09:00
-
delegateメソッドとtargetメソッドの違い
https://plaza.rakuten.co.jp/tech1985/diary/201109030000/
メソッドの目的は3種類に大別できる。命令と通知と問い合わせだ。- (void)doSomething;//命令- (void)loadDidFinish;//通知- (NSInteger)numberOfCells;//問い合わせ命令と問い合わせはメソッドの呼び出し側が主...
ニョホホホhoooo!
2011-09-03T19:50:12+09:00
-
retainとassignの使い分け
https://plaza.rakuten.co.jp/tech1985/diary/201109020001/
@propertyのオプションのretainとassignをどう使いわけるべきだろうか?receiverがそのpropertyなしには成り立たない場合はassign、そうでなければretainが良いだろう。例えば、id<myDelegate>delegateとい...
ニョホホホhoooo!
2011-09-02T08:50:48+09:00
-
Viewの世界の命名方法
https://plaza.rakuten.co.jp/tech1985/diary/201109020000/
MVCモデルにおけるViewの世界では、「意味」は意味を持たない。viewはcontrollerのなすがまま。自らは何も考えない。例えば、twitterでは星形の「記号」が ”お気に入り” という「意味」を表す。お気に入りである...
ニョホホホhoooo!
2011-09-02T07:27:26+09:00
-
ファイル名からファイルを開く
https://plaza.rakuten.co.jp/tech1985/diary/201109010000/
x-code4で、ファイル名からファイルを開くのショートカットはCmd+Shift+Oだ。ショートカット一覧をいくら眺めても見つからないと思いきや、Open Quickly...という名前で普通に載っていた。
ニョホホホhoooo!
2011-09-01T07:41:44+09:00
-
CoreDataとマルチスレッド
https://plaza.rakuten.co.jp/tech1985/diary/201108310001/
CoreDataはスレッドセーフではない。NSURLConnectionで非同期に落としてきたデータをManagedObjectに詰めていると、Saveのタイミングでたまに落ちる。とりあえずここに乗っていた方法で解決できそう。要するにコ...
ニョホホホhoooo!
2011-08-31T08:51:59+09:00
-
navigationBarとtabBarの高さ
https://plaza.rakuten.co.jp/tech1985/diary/201108310000/
CGFloat navigationHeight = [[[self tabBarController] rotationgHeaderView] frame].size.height; CGFloat tabHeight = [[[self tabBarController] rotationgFooterView] frame].size.height;で取得できたが...
ニョホホホhoooo!
2011-08-31T07:47:25+09:00
-
layoutSubviewsでscrollviewのframeを指定すると
https://plaza.rakuten.co.jp/tech1985/diary/201108300000/
動かない。layoutSubviewsでscrollviewのframeを指定するとbounceがきかなくなる。結構ハマった。通常のscrollはできるのだが、bounceアニメーションはsetFrame でリセットされてしまうようだ。【iphone,ipod,ipa...
ニョホホホhoooo!
2011-08-30T12:50:49+09:00
-
UIButtonにSubviewを追加する。
https://plaza.rakuten.co.jp/tech1985/diary/201108290000/
UIButtonにsubviewを追加したらボタンが押せなくなった。試しにsubviewをボタンの左半分だけの大きさにしてみる。右半分は押せる。左半分は押せない。subviewがイベントを横取りしているようだ。[subview setUser...
ニョホホホhoooo!
2011-08-29T23:01:48+09:00
-
initメソッドの中で成すべきこと
https://plaza.rakuten.co.jp/tech1985/diary/201108280002/
initメソッドの中では何をすべきか。何もすべきではない。できる限り。動的言語であるobjective-Cの基本思想は「使う時に作る」「必要なら呼ぶ」だ。初期化の時点であれこれ用意するのは好ましくない。よって、例...
ニョホホホhoooo!
2011-08-29T20:18:10+09:00
-
retainなる自前setter
https://plaza.rakuten.co.jp/tech1985/diary/201108280001/
しまった。自前でsetterを用意する際に- (void)setMyProperty:(id)newValue{ [myProperty release]; myProperty = [newValue retain];}としてしまっていたが、これだと2回連続で呼ばれた時にretainCou...
ニョホホホhoooo!
2011-08-28T21:45:13+09:00
-
objective-Cにおけるオーバーロードの是非
https://plaza.rakuten.co.jp/tech1985/diary/201108280000/
厳密に言えば、objective-Cでオーバーロードを行なうことはできない。そもそもオーバーロードとは、多重定義の一種で、同じ名前の、異なる引数を用いるメソッドを定義することを言う。Javaなどでよく使われる。し...
ニョホホホhoooo!
2011-08-28T18:05:28+09:00
-
適切なる命名
https://plaza.rakuten.co.jp/tech1985/diary/201108270003/
どのように命名を行なえばいいのか?という問いに対する答えは簡にして素にして明快だ。「コンテキスト内での一意性を保証する名称のうち、最も短く最も抽象的なもの」である。順に説明していこう。「コンテキス...
ニョホホホhoooo!
2011-08-28T09:51:58+09:00
-
DTOとしてのNSDictionary
https://plaza.rakuten.co.jp/tech1985/diary/201108270002/
NSDictionaryの中身は変更できない。ゆえに使い回しはきかない。しかし一時的に使うには便利だ。例えばデータの受け渡し。データが変更されていない、という保証は大きなアドバンテージだ。内容証明付きの郵便な...
ニョホホホhoooo!
2011-08-28T07:51:12+09:00
-
UIImageに影をつけて角も丸くする
https://plaza.rakuten.co.jp/tech1985/diary/201108270001/
丸くすると影がつかない。影をつけると丸くできないQuartzCoreを使えばCALayerのshadowとcornerRadiusを変更できるが、同時には適用できない。角丸を有効にするためにsetMasksToBoundsをYESにすると、shadowが無...
ニョホホホhoooo!
2011-08-27T19:51:26+09:00
-
delegateとnotificationとKVO
https://plaza.rakuten.co.jp/tech1985/diary/201108270000/
オブジェクトの連携には3つの方法がある。delegateとnotificationとKVO(Key-Value Observing)だ。どれも同じようなことができるのだが、何が違うのか、どう使い分けるべきかを考えてみることにする。この三つを...
ニョホホホhoooo!
2011-08-27T17:18:27+09:00