让我们说我要让我的AppController成为我的tablevIEw的数据源,并在界面构建器中建立连接.我的问题是,因为我的实际数据将存储在一个数组中,让我们称之为myArray,当我在代码中设置数据源时,我应该这样做
[tableVIEw setDataSource:myArray]; or this [tableVIEw setDataSource:self];
我对此感到困惑.如果我没有弄错的话,使用关键字“self”设置数据源会将其设置为AppController.
解决方法 表视图数据源必须符合NSTableViewDataSource
协议(在10.6之前称为NStableDataSource). NSArray不符合此协议,因此您不能将其用作数据源.
您需要在AppController对象中实现所需的协议方法,并将AppController对象指定为表的数据源.
- (voID)applicationDIDFinishLaunching:(NSNotification*)notification{ [tableVIEw setDataSource:self];}- (NSInteger)numberOfRowsIntableVIEw:(NStableVIEw *)atableVIEw{ return [myArray count];}- (ID)tableVIEw:(NStableVIEw *)atableVIEw objectValueFortableColumn:(NStableColumn *)atableColumn row:(NSInteger)rowIndex{ return [myArray objectAtIndex:rowIndex]; }总结
以上是内存溢出为你收集整理的cocoa – 数据源和NSTableView全部内容,希望文章能够帮你解决cocoa – 数据源和NSTableView所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)