翻转NSScrollView问题

时间:2013-11-04 05:20:52

标签: ios cocoa uiscrollview nsscrollview

我有一个NSScrollView需要在其中显示可变数量的NSView。我创建了一个自定义的NSView,它具有isFlipped返回YES并在我将其设置为NSScrollView的documentView之前将我的NSViews放入其中。这很好用。它像我期望的那样从上到下显示我的项目。

但是,当内容发生变化并且我需要更改NSScrollView的documentView框架时,我的内容就会消失。

使用UIScrollView可以更轻松,但唉。

我假设这些是等价的:

[NSScrollView.documentView setFrame:newFrame];
[UIScrollView setContentSize:newSize];

我认为很多程序员都需要翻转NSScrollView,但是如何在没有这种疯狂的情况下改变内容大小呢?显然,我错过了一些东西。

任何?谢谢!

2 个答案:

答案 0 :(得分:0)

你可以尝试设置

[scrollView.documentView setFrameSize:newFrame.size];

看看你的内容是否消失了?

答案 1 :(得分:0)

问题在于内部视图和自动调整/约束。我的内部视图实际上是一系列具有自己的xib文件的视图控制器。在每个视图控制器中,我添加了以下行:

[self.view setAutoresizingMask:NSViewNotSizable];

这解决了一切。

特别感谢lead_the_zeppelin帮助我(在聊天中)完成所有事情。