1

我正在尝试在我的 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 是正确的。

4

0 回答 0