Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cocoa NSTableCellView如果为';这是一个分组单元_Cocoa_Nstableview_Nstablecellview - Fatal编程技术网

Cocoa NSTableCellView如果为';这是一个分组单元

Cocoa NSTableCellView如果为';这是一个分组单元,cocoa,nstableview,nstablecellview,Cocoa,Nstableview,Nstablecellview,我正在尝试使用组和常规单元格创建一个简单的基于视图的NSTableView。除非我将此方法添加到我的NSTableViewDelegate/DataSource,否则每个单元格都正确绘制并显示我需要的所有内容: func tableView(tableView: NSTableView, isGroupRow row: Int) -> Bool { return (tableContent[row] as NSDictionary)["group"] != nil } 它工作得很

我正在尝试使用组和常规单元格创建一个简单的基于视图的
NSTableView
。除非我将此方法添加到我的
NSTableViewDelegate/DataSource
,否则每个单元格都正确绘制并显示我需要的所有内容:

func tableView(tableView: NSTableView, isGroupRow row: Int) -> Bool {
    return (tableContent[row] as NSDictionary)["group"] != nil
}
它工作得很好,但变成群细胞的细胞却什么也看不见。我在不同的细胞类型上尝试过,但仍然没有,只是一个半透明的灰色背景。即使我添加了类似

override func drawRect(dirtyRect: NSRect) {
    NSColor(calibratedRed: 0, green: 255, blue: 0, alpha: 1).setFill()
    NSRectFill(dirtyRect)
    super.drawRect(dirtyRect)

    // Drawing code here.
}

对于我的小组单元课,我只会得到半透明的灰色背景。

我想也许你犯了和我今天一样的错误

使用
func tableView(tableView:NSTableView,isGroupRow row:Int)->Bool
时,
func tableView(\utableview:NSTableView,viewFor tableColumn:NSTableColumn?,row:Int)->NSView?
不再为分组行提供
tableColumn
,这意味着
tableColumn
为零。因此,如果您的实现依赖于
tableColumn.identifier
,那么它是不可靠的


您应该将实现更改为依赖分组行的

是否可以显示NSTableViewDelegate的ViewForTable列?