我正在尝试在我的 mac 应用程序中的 NSTableView 中显示一些内容。
@implementation OpenTasksViewController {
NSMutableArray *tasks;
}
- (id)init {
self = [super init];
if (self) {
tasks = [NSMutableArray array];
[tasks addObject: [[Task alloc] initWithTitle:@"HI"]];
}
return self;
}
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView {
return [tasks count];
}
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
NSTableCellView *cell = [tableView makeViewWithIdentifier:tableColumn.identifier owner:self];
Task *t = [tasks objectAtIndex:row];
cell.textField.stringValue = t.title;
return cell;
}
这个类实现了 NSTableViewDataSource 和 NSTableViewDelegate 协议。可悲的是,我的应用程序没有显示内容。我尝试使用 reloadData,但这也不起作用。当我调试到项目中时, cell.textField 的 stringValue 是正确的。