Mat*_*per 4 macos cocoa objective-c nstableview
我正在尝试创建一个家庭作业计划应用程序,它在基于视图的NSTableView中有两种类型的TableCellViews.一种类型是窄条,其仅具有下面作业所针对的主题的标签,而另一种类型是输入作业项目的行.(我将在下面附上截图.)
我的问题是:在TableView中创建新行时,如何指定要创建的行类型?我假设它与标识符有关,但我找不到有关如何以这种方式使用它们的任何信息.
这基本上是它的样子:

小智 9
您使用标识符在正确的轨道上.这是你如何使用它们.
首先使用您的特定行类型设置NSTableView(您可能已经完成了).在下面的屏幕截图中,我创建了一行标题和描述,另一行标有几个按钮.

接下来,您需要设置所需的标识符.单击Interface Builder中的第一行,然后选择Identity Inspector.选择第一行的唯一标识符.对其他人做同样的事情.

最后,在您的实现中使用以下代码创建特定类型的新行:
TableViewController.m
#pragma mark - NSTableViewDelegate
- (NSView *)tableView:(NSTableView *)tableView
viewForTableColumn:(NSTableColumn *)tableColumn
row:(NSInteger)row {
NSTableCellView *cell;
if(someCondition == YES) {
cell = [self.tableView makeViewWithIdentifier:@"ButtonRow" owner:self];
} else {
cell = [self.tableView makeViewWithIdentifier:@"TitleDescriptionRow" owner:self];
}
return cell;
}
Run Code Online (Sandbox Code Playgroud)
如果您正在寻找更深入的教程,请查看Cocoa Programming L51 - 基于视图的NSTableView(YouTube视频,而不是我).
| 归档时间: |
|
| 查看次数: |
1395 次 |
| 最近记录: |