在我的应用程序中,我使用 NSSplitView,它能够使用- (void)setVertical:(BOOL)flag
方法在垂直和水平布局之间切换。问题是当用户更改布局时,拆分器总是将其位置恢复到 50%/50%。
NSSplitView 的分隔线可以自动保存,但它不会为两种布局保存值。
处理这个问题的最佳方法是什么?在每次调整大小和拆分器移动时将子视图矩形保存在 NSUserDefault 中,并在布局切换时恢复它们?它看起来不错吗?有没有更好的解决方案。
在我的应用程序中,我使用 NSSplitView,它能够使用- (void)setVertical:(BOOL)flag
方法在垂直和水平布局之间切换。问题是当用户更改布局时,拆分器总是将其位置恢复到 50%/50%。
NSSplitView 的分隔线可以自动保存,但它不会为两种布局保存值。
处理这个问题的最佳方法是什么?在每次调整大小和拆分器移动时将子视图矩形保存在 NSUserDefault 中,并在布局切换时恢复它们?它看起来不错吗?有没有更好的解决方案。
不幸的是,自动保存不适用于拆分器位置(不知道为什么)。我最终完全按照您的建议进行操作:在 NSUserDefaults 中保存矩形。
此外,还有非常出色的BWToolkit及其拆分视图,它在拆分位置方面应该可以正常工作。但请记住,我们的 IDE 版本 4 不(希望还)支持插件 ;-)