chevron_left

メインカテゴリーを選択しなおす

cancel
arrow_drop_down
  • delegateメソッドとtargetメソッドの違い

    メソッドの目的は3種類に大別できる。 命令と通知と問い合わせだ。 - (void)doSomething;//命令 - (void)loadDidFinish;//通知 - (NSInteger)numberOfCells;//問い合わせ 命令と問い合わせはメソッド

  • retainとassignの使い分け

    @propertyのオプションのretainとassignをどう使いわけるべきだろうか? receiverがそのpropertyなしには成り立たない場合はassign、 そうでなければretainが良いだろう。 例えば、 id<myDelegate>d

  • Viewの世界の命名方法

    MVCモデルにおけるViewの世界では、「意味」は意味を持たない。 viewはcontrollerのなすがまま。自らは何も考えない。 例えば、twitterでは 星形の「記号」が ”お気に入り” という「意味」を表す。 お気に入

  • ファイル名からファイルを開く

    x-code4で、ファイル名からファイルを開くのショートカットは Cmd+Shift+O だ。 ショートカット一覧をいくら眺めても見つからないと思いきや、 Open Quickly...という名前で普通に載っていた。

  • CoreDataとマルチスレッド

    CoreDataはスレッドセーフではない。 NSURLConnectionで非同期に落としてきたデータをManagedObjectに詰めていると、 Saveのタイミングでたまに落ちる。 とりあえずここに乗っていた方法で解決できそう。 要

  • navigationBarとtabBarの高さ

    CGFloat navigationHeight = [[[self tabBarController] rotationgHeaderView] frame].size.height; CGFloat tabHeight = [[[self tabBarController] rotationgFooterView] frame].size.height; で取得できた

  • layoutSubviewsでscrollviewのframeを指定すると

    動かない。 layoutSubviewsでscrollviewのframeを指定すると bounceがきかなくなる。 結構ハマった。 通常のscrollはできるのだが、 bounceアニメーションはsetFrame でリセットされてしまうようだ。

  • UIButtonにSubviewを追加する。

    UIButtonにsubviewを追加したらボタンが押せなくなった。 試しにsubviewをボタンの左半分だけの大きさにしてみる。 右半分は押せる。左半分は押せない。 subviewがイベントを横取りしているようだ。 [subv

  • initメソッドの中で成すべきこと

    initメソッドの中では何をすべきか。 何もすべきではない。できる限り。 動的言語であるobjective-Cの基本思想は「使う時に作る」「必要なら呼ぶ」だ。 初期化の時点であれこれ用意するのは好ましくない。

  • retainなる自前setter

    しまった。 自前でsetterを用意する際に - (void)setMyProperty:(id)newValue{ [myProperty release]; myProperty = [newValue retain]; } としてしまっていたが、 これだと2回連続で呼ばれ

  • objective-Cにおけるオーバーロードの是非

    厳密に言えば、objective-Cでオーバーロードを行なうことはできない。 そもそもオーバーロードとは、多重定義の一種で、 同じ名前の、異なる引数を用いるメソッドを定義することを言う。Javaなどでよく使われる

  • 適切なる命名

    どのように命名を行なえばいいのか? という問いに対する答えは簡にして素にして明快だ。 「コンテキスト内での一意性を保証する名称のうち、最も短く最も抽象的なもの」 である。 順に説明していこう。

  • DTOとしてのNSDictionary

    NSDictionaryの中身は変更できない。 ゆえに使い回しはきかない。しかし一時的に使うには便利だ。 例えばデータの受け渡し。 データが変更されていない、という保証は大きなアドバンテージだ。 内容証明付きの

  • UIImageに影をつけて角も丸くする

    丸くすると影がつかない。 影をつけると丸くできない QuartzCoreを使えば CALayerのshadowとcornerRadiusを変更できるが、同時には適用できない。 角丸を有効にするためにsetMasksToBoundsをYESにすると、 sh

  • delegateとnotificationとKVO

    オブジェクトの連携には3つの方法がある。 delegateとnotificationとKVO(Key-Value Observing)だ。 どれも同じようなことができるのだが、 何が違うのか、どう使い分けるべきかを考えてみることにする。 こ

arrow_drop_down

ブログリーダー」を活用して、てくてくさんをフォローしませんか?

ハンドル名
てくてくさん
ブログタイトル
てくてくのiPhoneアプリ開発あれやこれや
フォロー
てくてくのiPhoneアプリ開発あれやこれや

にほんブログ村 カテゴリー一覧

商用