cocoa – NSPageController调整大小和快照

我有一个NSPageController在书模式下有两个页面,每个页面包含一个NSTableView.如果我启动应用程序并垂直调整其大小,然后滑动到另一个页面,则在调整大小之前,滑动动画中使用的快照属于NSTableView.这个视图滑动只覆盖前一个视图的一部分,这看起来很糟糕.在调整视图大小时,是否可以让NSPageController使快照无效? 最佳答案
PictureSwiper示例通过在调整窗口大小时设置视图的框架来完成此操作.但是,您需要设置布局/调整大小约束.每当视图大小更改时,约束都将导致NSPageController的视图对象也被调整大小.如果您正在对视图布局/大小执行独特的操作,则需要手动调整大小,如链接的示例所示.

此外,快照生成快照.从NSPageController的arrangeObjects方法文档中:

The delegate will be asked for snapshots as they are needed.

这有助于牢记:

When using the book mode, if pageController.view is layer backed, live layers are used during transition instead of snapshots.

点赞