gpt4 book ai didi

cocoa - 合并NSTableView的单元格

转载 作者:行者123 更新时间:2023-12-03 17:09:17 24 4
gpt4 key购买 nike

有什么方法可以合并 NSTableView 中的单元格吗?

我知道 NSTableView 有两种显示数据的模式:基于单元格和基于 View 。如果数据由单元格呈现,则函数

tableView(_ tableView: NSTableView, viewFor tableColumn:  NSTableColumn?, row: Int) 

有责任,否则

tableView(_ tableView: NSTableView, rowViewForRow row: Int)

目前我正在使用第一个。在 iOS 中,您可以使用界面生成器中的单元原型(prototype)将 View 与自定义 UITableViewCell 链接起来,但是如何在 NSTableView 中实现完整的行呢?

最佳答案

也许我找到了解决方案:您可以同时使用

tableView(_:viewFor:row:)

tableView(:viewFor:tableColumn:row:)

但您必须注意,tableView 并未对一个单元格使用这两种方法(互斥)。

现在您可以定义一个 xib,其中包含一个 UIView。将 UIView 的类更改为 NSTableRowView。接下来,将 viewDidLoad 中的类加载到表中:

if let nib: NSNib = NSNib(nibNamed: NSNib.Name("SpecialRow"), bundle: nil) {
self.tableView?.register(nib, forIdentifier: NSUserInterfaceItemIdentifier("specialRow"));
}

在表方法 rowViewForRow 中,您可以执行以下操作:

if let srow: SpecialRow = tableView.makeView(withIdentifier: NSUserInterfaceItemIdentifier(rawValue: "specialRow"), owner: nil) as? SpecialRow {
// ...

return srow;
}

关于cocoa - 合并NSTableView的单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48972368/

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