0

这个问题适用于cocoacocoa touch。但我会为cocoa.

据我了解,我可以在一个循环setNeedsLayoutYES多次,并且-layout只会被调用一次。-layout但是在方法中布置子视图还有其他好处吗?

说明/示例:目前,每次调用自定义方法时,我都在自定义viewController(具有默认值)中布置我的子视图。而且我只在用户更改某些属性时才调用方法,所以我真的想重新布局子视图。NSViewredrawredraw

4

1 回答 1

1

有很多外部环境不受您的直接控制,可能会导致系统想要展示您的视图。例如,iOS 上的设备旋转或来电,或 OS X 上的窗口大小调整。如果您的布局逻辑位于标准位置,那么您的代码无需任何额外努力即可适应这些,并且在您的内部状态发生变化的地方,您可以明确要求这样的布局。

扭转您的问题:以标准方式进行布局有显着的好处吗?你认为这将是一个性能问题吗?您是否对其进行了测量以查看它是否实际上是性能问题?

于 2013-04-23T13:06:18.273 回答