タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

KVCに関するsyugのブックマーク (2)

  • KVC の拡張:括弧付きキーパス

    これまでの記事で、KVC (Key-Value Coding) によるオブジェクトの取得についていろいろと見てきました。NSSet と NSArray の特別な挙動や、 NSDictionary の特別な挙動、Set And Array Operators をマスターすることで、取得できるオブジェクトの幅が広がりました。しかし、デフォルトの KVC には弱点があります。 今回は、その弱点を明らかにし、valueForKeyPath: メソッドを拡張することで、その弱点を克服してしまいます。 デフォルトの KVC には弱点があります。まずは、その弱点を明らかにしたいと思います。 例えば、次のような NSDictionary 型変数 bowling があるとします。 bowling = { players = ( { name = A; scores = ( 120, 150, 180 );

    KVC の拡張:括弧付きキーパス
  • NSDictionary の objectForKey: と valueForKey: の違い - 24/7 twenty-four seven

    objectForKey: は NSDictionary のメソッドですが、 valueForKey: は KVC (Key Value-Coding) 由来のメソッドです。 If key does not start with “@”, invokes objectForKey:. If key does start with “@”, strips the “@” and invokes [super valueForKey:] with the rest of the key. NSDictionary Class Reference 上記の通り、たいていの場合 valueForKey: は objectForKey: と同じ結果を返しますが、キー値が「@」から始まる場合、異なる動作をします。 キー値が「@」から始まる場合、「@」を除いた値を引数にしてスーパークラスの valueFo

    NSDictionary の objectForKey: と valueForKey: の違い - 24/7 twenty-four seven
  • 1