理解键值编码文档示例

时间:2012-04-12 18:11:13

标签: objective-c arrays cocoa

    - (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”,它以某种方式从数组对象中调出一个名字?

1 个答案:

答案 0 :(得分:0)

[child name]child发送一条名为“name”的消息,该消息是ChildObject类的一个实例。 ChildObject类实现一个名为name的方法,该方法(可能)返回一个NSString,其值等于child的name实例变量的值。涉及数组对象的唯一方法是child本身是通过从childrenArray拉出来获得的,{{1}}是一个ChildObject实例数组。