Cocoa 如何在NSTableView中设置列边距?
我想在我的NSTableView中为列边距添加更多的填充(即,列左侧和列文本之间的间距更大) 调用setIntercellSpacing对行执行此操作,但不影响列标题边距。有人能提供解决方案吗Cocoa 如何在NSTableView中设置列边距?,cocoa,macos,Cocoa,Macos,我想在我的NSTableView中为列边距添加更多的填充(即,列左侧和列文本之间的间距更大) 调用setIntercellSpacing对行执行此操作,但不影响列标题边距。有人能提供解决方案吗 谢谢首先,我要说的是,在表列标题和单元格文本之间留有边距有点奇怪,但这只是我的观点 据我所知,目前还没有支持API的方法来完成这项工作。您可能可以通过向列询问其标题单元格(这是NSTextFieldCell的子类)并设置其属性字符串值(通过-setAttributedStringValue:)来实现此效果
谢谢首先,我要说的是,在表列标题和单元格文本之间留有边距有点奇怪,但这只是我的观点 据我所知,目前还没有支持API的方法来完成这项工作。您可能可以通过向列询问其标题单元格(这是NSTextFieldCell的子类)并设置其属性字符串值(通过-setAttributedStringValue:)来实现此效果。您可能还必须将-setAllowEditingTextAttributes:设置为YES,但我不确定
另一种方法是子类NSTableHeaderCell并重写-titleRectForBounds:传递矩形超返回的宽度插入副本。然后,您必须通过-setHeaderCell:.替换列的标题单元格。Hi Joshua-感谢您抽出时间提供答案。我怀疑没有一个简单的解决办法。关于它的“怪异”,我只是想让它看起来像是处于“列表”模式的查找窗口。你的观点很好理解。我甚至没有注意到这种行为。再说一遍,我通常在列视图中。:-)