3

最近在 Xcode 5 中切换到自动布局(并观看了来自 WWDC 13 的开发人员视频),我发现除了基于视图的 NSOutlineView 之外,其他东西都可以很好地工作。

在自动布局之前,这有效。一切正常并且在正确的位置,但是现在,特别是当我滚动时,一些新条目(而不是全部)最终出现在错误的位置,总是更大且略高。

重绘后问题就消失了,但我不了解绘制这些 NSTableCellView 的机制以及它们何时由大纲视图创建。我的意思是,看起来它们是在某个时候创建​​的,程序正在猜测适当的约束,然后在重绘后修复它们。

发布一张图片来解释这一点真的很好,但是有人可以解释 NSTableView 或 NSOutlineView 中视图的生命周期吗?

4

1 回答 1

0

我必须自己解决这个问题,今天我能够解决它。如果您在 anNSTableCellView中使用需要调整大小以适合其单元格或其任何子视图的任何内容,则会发生这种情况。我通过使用与作为子视图添加到on IBNSImage的占位符完全相同的大小来解决此问题。这种调整大小将打破您在此视图中添加或期望的约束。NSImageNSTableCellView

于 2019-11-20T05:45:07.503 回答