4

我有 NSScrollView 的问题,它没有按我想要的方式显示。是的,我知道网络上有很多关于它的帖子,我需要在我的 NSView 子类中覆盖 isFlipped,以使其返回 YES。

好的,完成了,所以现在,我的 scrollView 从上到下滚动,而不是像在覆盖 isFlipped 之前那样反向滚动。

但是,这是第二部分,我真正的问题,我没有在网上找到任何答案,如果一切都翻转了,我应该如何编写代码,或者在界面构建器中创建我的视图?如果我把一些东西放在顶部,它会显示在底部……你有什么神奇的技巧来处理它吗?

我的最后一个问题是 NSScrollView 框架。在设置滚动视图的documentView之前,一切都很好,滚动视图显示在我选择的位置,但是,当我设置文档视图时,滚动视图框架看起来更大,所以我必须调整它的大小......。这是正常行为吗?

非常感谢。

4

2 回答 2

5

答案通常是创建一个 NSClipView 子类,它从 isFlipped 的覆盖中返回 YES:

然后在 IB 中,将滚动视图的内容视图(剪辑视图)设置为您的子类。

于 2015-02-10T06:11:27.910 回答
1

翻转仅将其坐标系应用于该确切视图,而不是整个视图层次结构中的所有内容。因此,无论您将直接放入翻转的内容视图中的任何内容,都需要知道它已被翻转,但其他任何事情都没有。

如果您不希望它以这种方式工作,请不要要求翻转它!没有规则说 NSScrollView 的文档视图必须翻转,对于任何具有可变高度内容的内容从上到下布局是很常见的,这在翻转视图中最容易做到。如果你正在做的布局最适合作为底部锚定,无论如何,保持它不翻转,无论是最简单的。(无论如何,Interface Builder 中的任何东西都应该没问题……您是否真的看到了这个问题,或者您只是推测它可能会发生?我从未见过这个问题……)

设置文档视图不应该改变 NSScrollView 的大小。除此之外,您可能还有其他事情要做……</p>

于 2010-04-29T15:17:53.807 回答