【问题标题】:NSScrollView frame and flipped documentViewNSScrollView 框架和翻转的 documentView
【发布时间】:2010-04-29 09:12:37
【问题描述】:

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

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

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

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

非常感谢。

【问题讨论】:

    标签: objective-c cocoa macos nsscrollview


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

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

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

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

      【讨论】:

      • 好的。所以如果我翻转我的 documentView,我需要对我添加的每个视图进行子类化,以覆盖它们的 isFlipped 方法,对吗?而且,我想我需要继续翻转的方式,因为从上到下阅读更常见,我认为如果我们在 Pages 中从下到上滚动,那会很奇怪 ^^ 不,我不是在猜测,我已经翻转了我的视图,并在 IB 中设计了它,它绘制了翻转的所有内容。谢谢你。我将添加一些scrollView 调整大小问题和显示翻转的IB 视图的屏幕截图。因此,如果有人有想法,查看它会更容易理解。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-11-19
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 2017-05-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多