2015-03-03 47 views
1

当选中库存NSTableView的行/单元格时,其背景变为蓝色,并且任何标准NSTextfields文本颜色变为白色。选择封装NSTableView单元格时收到通知?

是否有一个公共API让您在选择封装行视图或单元格视图时收到消息?基本上,我想制作一个自定义视图,当选中行/单元格时,它会改变颜色。

回答

1

表格单元格没有被选中,表格行。 NSTableRowView有一个selected属性。

我认为你应该只是依赖你的视图被要求绘制(即被标记为需要显示),而不管它是否被选中。然后它可以查询其封闭行视图的属性,以决定它应该如何绘制

也就是说,你不应该使用行的selected属性来决定如何绘制。相反,您经常应该使用该行的interiorBackgroundStyle。或者,如果您使用NSTableCellView作为您的手机视图,请检查其backgroundStyle。在很多情况下,你不必检查;单元格视图会将backgroundStyle的设置转发到它的子视图,如果它们支持的话。

+0

感谢您的帮助。所以你只需要添加一个backgroundStyle属性到你的自定义视图中,然后检查它......听起来很优雅。 – 2015-03-03 16:32:38