Jon*_*ang 6 xcode objective-c interface-builder nstableview
在尝试创建基于视图的表时,它不断调用objectValueForTableColumn函数而不是viewForTableColumn.
我在其设置中将表视图设置为"基于视图".但我仍然不能让它调用正确的功能.我已经看了苹果实例(tableviewplayground)的实现,并且在某些方面甚至复制粘贴了IB和函数,仍然没有进展.
相关代码:
// Should run
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
{
return nil;
}
// Gets run
-(id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
{
return nil;
}
Run Code Online (Sandbox Code Playgroud)
两张照片,不知道它们有多大帮助但仍然如此.http://imgur.com/a/ix34Q
Flu*_*imp 16
要检查的一些事项:
您是否将NSTableView其delegate设置为实现NSTableViewDelegate协议的类?(我问因为
tableView:viewForTableColumn:row:是一个委托方法,而它
tableView:objectValueForTableColumn:row:是一个数据源方法.)
IB中是否有任何绑定?(您提到您从现有项目复制了nib.)主要检查NSTableView内容绑定和提供的视图的子视图(通常是文本字段)的绑定.
您是否numberOfRowsInTableView:从NSTableViewDataSource协议实现该方法
并返回非零整数?
最后,您可以查看文档中的"以编程方式填充基于视图的表视图"的" 表视图编程指南"一章.
| 归档时间: |
|
| 查看次数: |
3433 次 |
| 最近记录: |