我在书模式下有一个NSPageController,有两个页面,每个页面都包含一个NSTableView。如果我启动应用程序并垂直调整其大小,然后滑动到另一个页面,则在调整大小之前,滑动动画中使用的快照属于NSTableView。这个视图滑动只覆盖前一个视图的一部分,这看起来很糟糕。是否可以在调整视图大小时让NSPageController使快照无效?
答案 0 :(得分:2)
PictureSwiper示例通过在调整窗口大小时设置视图的框架来完成此操作。但是,您需要设置布局/调整大小约束。每当视图大小更改时,约束都将导致NSPageController的视图对象也被调整大小。如果您正在对视图布局/大小执行独特的操作,则需要手动调整大小,如链接示例所示。
此外,快照也会快速生成。来自arrangedObjects
的{{1}}方法文档:
将要求代表在需要时提供快照。
这一点非常有用:
使用图书模式时,如果
NSPageController
是图层备份,则在转换期间使用实时图层而不是快照。