gpt4 book ai didi

objective-c - 基于单元格的 NSTableView 和基于 View 的 NSTableView 有什么区别?

转载 作者:太空狗 更新时间:2023-10-30 03:17:57 27 4
gpt4 key购买 nike

如果我的理解没有错的话,cell-based NSTableView 和 view-based NSTableView 是同一类型的实例。那么,cpu是如何区分cell-based和view-based的呢?

据我所知,基于单元格和基于 View 的委托(delegate)方法是不同的。基于单元格的 NSTableView 需要 tableView:objectValueForTableColumn:row: 而基于 View 的 NSTableView 需要 tableView:viewForTableColumn:row:。有什么决定 NSTableView 的实例是基于单元还是基于 View ?

最佳答案

除了下面的描述,我建议你通过 http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/TableView/Introduction/Introduction.html

在 OS X 10.6 及更早版本中,表格 View 中的每个单独单元格都必须是 NSCell 的子类。这种方法在设计复杂的自定义单元格时造成了限制,通常需要开发人员编写自己的 NSCell 子类。此外,提供进度 View 等动画非常困难。

在 OS X 版本 10.7 中,表格 View 已经过重新设计,现在支持将 View 用作单独的单元格。这些被称为基于 View 的 TableView 。基于 View 的 TableView 允许您在 Xcode 4.0 的 Interface Builder 部分设计自定义单元格。它允许简单的设计时布局以及使更改动画和自定义绘图变得容易。与基于单元格的 TableView 一样,基于 View 的 TableView 支持选择、列拖动和其他用户期望的 TableView 行为。唯一的区别是开发人员在设计和实现方面获得了更大的灵 active 。

创建基于 View 和基于单元格的 TableView 以及添加列使用 Interface Builder 中的相同技术。在提供单个单元格、填充 TableView 的内容和自定义 TableView 外观时,应用程序代码中会出现差异。同样,Cocoa 绑定(bind)技术在这两种实现之间完全不同。

关于objective-c - 基于单元格的 NSTableView 和基于 View 的 NSTableView 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15623731/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com