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 は正しいです。