【问题标题】:Background color in cells in NSTableView is 1 pixel offNSTableView 中单元格的背景颜色为 1 个像素
【发布时间】:2014-09-23 21:47:20
【问题描述】:

我正在制作一个 OSX 应用程序,其中一部分是使用 NSTableView 来模拟“时间线”,方法是放入一个非常细的列,然后设置背景颜色。没关系,除非无论出于何种原因,每当背景颜色发生变化时,单元格似乎都会偏离 1 个像素。有人有什么想法吗?我没有发布图片的声誉,所以这里是链接:http://imgur.com/PrLdjIV

感谢您阅读本文!

【问题讨论】:

  • 你用什么具体的技术来绘制背景颜色?基于视图还是基于NSCell 的表视图?您在表格的哪个组件上设置了背景颜色? (顺便说一句,为此使用表格视图似乎很愚蠢。自定义视图会更简单。)
  • 我在 NSTableCellView 中有一个 NSTextField,我将 NSTextField 的背景颜色设置为颜色。我正在使用表格视图,因为时间线应该与另一个具有图像和日期的表格视图滚动同步,并且因为在相关位置单击时间线应该会显示图像。但是,如果您认为我可以通过自定义视图更轻松地做到这一点,我会很高兴听到您的意见。 :)

标签: objective-c macos cocoa nstableview


【解决方案1】:

NSTableCellView 不一定会从边到边填充一行。同样,这样的单元格视图中的NSTextField 不一定会从边缘填充到边缘。

在您的表视图委托中实现-tableView:didAddRowView:forRow: 并设置行视图的backgroundColor

【讨论】:

    猜你喜欢
    • 2022-12-12
    • 1970-01-01
    • 2015-11-29
    • 1970-01-01
    • 2012-05-21
    • 1970-01-01
    • 1970-01-01
    • 2014-10-08
    • 2020-09-22
    相关资源
    最近更新 更多