我创建基于视图的表视图,并且在创建自定义组行时遇到一些麻烦。我想在我的组行中添加文本,并且Apple提供的默认行为非常好,但我需要更改实际行的颜色和外观。我已经分类NSTableRowView
,它的工作原理,但不幸的是不是很好。特别是当它开始浮动时,我还没有想出如何更改视图的alpha而不会使文本alpha发生变化。nstableview自定义组行
回答
这其实很容易。创建NSTableRowView的新子类并覆盖方法drawRect :. 最好总是调用[super drawRect:dirtyRect];在开始时。 然后你有属性self.isGroupRow。如果是,那么只需绘制自定义组行。
您可以使用tableView:rowViewForRow:方法在Table View委托中加载自定义行。 只需返回它的一个实例就行了
如果我正确理解你的问题,这个解决方案应该为你工作:
Draw a custom NSTableRowView depending on if next row is group row
如果这只会让你的一部分,也许你可以跟进更具体的问题。 – paulmelnikow
感谢您的帮助。在那个例子中,他通过仅使用一个NSTextField来自动提供浅灰色和浮动属性(如果需要),从而形成一个组。在我的情况下,我需要将组行更改为较深的颜色,并保持浮动属性。我所做的是使用NSTableRowView的子类来为组行创建自定义绘图,但我无法使其浮动。但现在我想我应该只是继承NSTextFieldCell而不是?所以基本上我为子组行划分了什么样的自定义绘图,以及使它浮动的正确方法是什么? – rick
什么是浮动? – paulmelnikow
- 1. 自定义NSTableView与自定义NSTableCellView?
- 2. 如何自定义NSTableView行draggingImage?
- 3. 带自定义NSColumnHeaderCell的NSTableView
- 4. mouseDown:在NSTableView中的自定义NSTextField中
- 5. NSTableView中的自定义单元格
- 6. 在NSTableView/NSOutlineView中的自定义视图
- 7. 自定义NSTableHeaderCell NSTableView的清晰背景
- 8. NSTableView与自定义单元格
- 9. NSTableView列中的自定义NSView
- 10. 通知新的NSTableView组行
- 11. 自定义选定的NSTableView单元图标
- 12. 如何将NSTableView绑定到自定义集合类?
- 13. NSTableView - 预定某一行
- 14. NSTableView选定的行高亮
- 15. 定制NSTableView行背景
- 16. SSRS行分组自定义和总计
- 17. PyGTK的自定义组合框行为
- 18. NSTableView分组
- 19. 自定义组件绑定:“'
- 20. NSTableView在添加到SplitView的自定义视图中崩溃
- 21. 什么是自定义NSTableView单元最简单的方法?
- 22. 处理基于视图的自定义选择样式NSTableView
- 23. 如何使用自定义视单元格创建NSTableview
- 24. 自定义基于视图的nstableview调整大小
- 25. 以NSTableView作为拖动源的自定义拖动图像
- 26. nstableview拖放自定义单元格视图
- 27. 可可:NSCell中针对NSTableView的自定义文本
- 28. 如何将自定义表格单元格视图导入NSTableView?
- 29. 以编程方式创建NSTableView和自定义NSViewController
- 30. 如何在macOS 10.12+上自定义NSTableView标题?
基本上是我最终做了什么,除了我认为drawBackground是我使用的方法。谢谢回复! – rick