outlineView的TextField中的Autolayout约束

时间:2014-12-18 09:56:21

标签: autolayout nstableview nsoutlineview appkit

昨晚有一个自动布局问题。我在Google上搜索并尝试在SO中找到类似的东西。即便是苹果医生也没有指出我正确的方向。也许我的搜索字词完全错误。 也许你们可以为我的黑暗带来一些光明。

我在故事板中添加了一个NSOutlineView,并为NSTableCellView添加了一些约束。如您所见,我为Superview of 50添加了一个尾随空格:

Storyboard

我的示例代码通过标识符将一些foo&bar和bar添加到outlineView中:

func outlineView(outlineView: NSOutlineView, viewForTableColumn tableColumn: NSTableColumn?, item: AnyObject) -> NSView? {
    if tableColumn?.identifier == "NAME_COLUMN" {
        cell = outlineView.makeViewWithIdentifier("NAME_COLUMN", owner: self) as NSTableCellView
        cell.textField!.stringValue = "foo"
        cell.textField!.editable = true
        cell.textField!.delegate = self

    } else
    if tableColumn?.identifier == "VALUE_COLUMN" {
        cell = outlineView.makeViewWithIdentifier("VALUE_COLUMN", owner: self) as NSTableCellView
        cell.textField!.stringValue = "bar"
        cell.textField!.editable = true
        cell.textField!.delegate = self
    }

    return cell
}

但是我的正在运行的应用程序中不会显示尾随空格!

enter image description here

我甚至尝试设置单元格显示:

cell.needsDisplay = true
cell.needsLayout = true
cell.needsUpdateConstraints = true

或 - 根据互联网上的某人 - 添加" requiresConstraintBasedLayout":

class func requiresConstraintBasedLayout() -> Bool {
    return true
}

但都没有运气。不显示尾随空格,右侧边框上的条形看起来很糟糕。

如何在带有尾随空格的OutlineView中使用TableViewCell?

非常感谢任何提示。

PS

0 个答案:

没有答案