2012-04-12 8 views
0
- (id)tableView:(NSTableView *)tableview 

    objectValueForTableColumn:(id)column 

         row:(int)row 

    { 

ChildObject *child = [childrenArray objectAtIndex:row]; 

if ([[column identifier] isEqualToString:@"name"]) { 

    return [child name]; 

} 

if ([[column identifier] isEqualToString:@"age"]) { 

    return [child age]; 

} 
    ...... 

は: http://developer.apple.com/library/ios/#documentation/cocoa/conceptual/KeyValueCoding/Articles/Overview.html理解キー値コーディング文書の例上記のコードは、このページからである

私は[子の名前]が何であるかを理解することができません。 ChildObjectクラスのインスタンス変数が、何らかの形で配列オブジェクトから名前を呼び出すと思われるメッセージ "name"に送信されていますか?

答えて

0

[child name]は、ChildObjectクラスのインスタンスであるchildに「名前」というメッセージを送信します。 ChildObjectクラスはnameという名前のメソッドを実装しています。このメソッドは、おそらく子の名前インスタンス変数の値と等しい値を持つNSStringを返します。配列オブジェクトが含まれている唯一の方法は、child自体を、ChildObjectインスタンスの配列であるchildrenArrayから取得することによって取得することです。

関連する問題