我有委托方法的问题。其中一个数组填充到tableView中的是没有触发,我不明白为什么。 结果是我的tableView具有预期的行数,但它们都是空的。 我设置断点但不止于此。
我可以尝试的任何线索?
//This is working
- (id)init {
self = [super init];
cmdListMain = [NSArray arrayWithObjects: @"Cat", @"Dog", @"Fish", nil];
NSLog (@"init");
return self;
}
//This is working
- (int) numberOfRowsInTableView: (NSTableView *) tv
{
NSLog(@"numberOfRowsInTableView");
return [cmdListMain count];
}
//This one is not firing**
- (id)cmdTableView:(NSTableView *)tv
objectValueForTableColumn :(NSTableColumn *)cmdTableView
row :(int)rowIndex
{
NSLog(@"cmdTableView");
NSString *v = [cmdListMain objectAtIndex:rowIndex];
return v;
}
//This is working
-(BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *) theApp {
return YES;
}
答案 0 :(得分:4)
您似乎错误拼写了此数据源(非委托)方法。改变这个:
- (id)cmdTableView:(NSTableView *)tv
objectValueForTableColumn :(NSTableColumn *)cmdTableView
row :(int)rowIndex
到此:
- (id)tableView:(NSTableView *)tv
objectValueForTableColumn :(NSTableColumn *)column
row :(int)rowIndex