好的。我浏览了一些建议(在问我之前经常回答我的问题)。我没有找到我需要的东西。NSTableView:显示一个扩展行(动态调整大小)
我知道我做错了什么。我一直在iOS(UIKit)中执行此操作,但NS(Mac)中的表格与UIKit完全不同。
我有一个基于视图的NSTableView。每行有1列。此列有一个标题(高21点)和扩大视图(该行高420点)。标题左侧有一个显示三角形,用于切换这两种模式。
控制器也是表数据源和委托。我有行高调用,为视图返回正确的值。
标题显示正常。我将行高设置为21,只显示标题。这剪辑了主视图。
当一个三角形被触发,行扩大其高度以露出整个视图:
足够简单,是吗?
问题是B不显示。我只是得到一个空白(但是,A被正确显示)。项目在那里,只是没有被显示。表格行是正确的高度(这可以通过使用交替行颜色来验证)。
我试过在视图上设置setNeedsLayout/Draw。
我可能做错了什么线索?
我敢打赌,我正在做一件头脑发热的事情,我会继续研究这件事。
谢谢!我会检查一下。我 - 修复它。原始视图被分成2个子视图(标题和正文)。我从这些子视图中删除了这些项目,并将它们全部放在主视图中。他们现在显示。很奇怪。 –
哦,有趣。我相信桌面视图或任何显示单元格的子帧,如果显示被裁剪 - 在cellView中使用drawRect时,我有一些丑陋的滚动问题 - 所以我猜needsDisplay可能是有用的,但我不知道。当您将行高标记为脏时,TableView应处理该事件。 – stevesliva
谢谢!我会一直搞乱它,看看它发生了什么。 –