【发布时间】:2013-02-21 14:59:52
【问题描述】:
我以编程方式创建了一个表格视图并成功添加了列、委托和数据源。但问题是只有一种数据源方法被调用,即
-(NSInteger)numberOfRowsInTableView:(NSTableView *)tableView
正如这里提出的问题: NSTableView: only numberOfRowsInTableView: datasource is called
但是这个问题没有具体的答案。
这是我创建 TableView 的代码:
customTableView=[[NSTableView alloc]initWithFrame:frame];
[customTableView setBackgroundColor:[NSColor redColor]];
customTableView.delegate=self;
customTableView.dataSource=self;
NSTableColumn * column1 = [[NSTableColumn alloc] initWithIdentifier:@"Col1"];
[column1 setWidth:frame.size.width];
[customTableView addTableColumn:column1];
[self addSubView:customTableView];
[customTableView reloadData];
此外,我所有的数据源方法都在同一个类中。
编辑:我在单独的视图类中创建这个 TableView,而不是在 ViewController 或 AppDelegate 中。
【问题讨论】:
-
提供您在 numberOfRowsInTableView 中使用的代码。还要指定您在哪里初始化数据(可能是 NSArray),这是您提供的链接中出现的问题。
-
以上代码是在 awakeFromNib 还是 init 中?
-
你在使用自定义的tableview吗
-
@Rakesh:我只是返回 10 作为初始测试的数字。
-
@AKV:仅在 init 方法中。
标签: objective-c osx-lion nstableview