2

我有一个视图控制器,它显示在弹出框内。我试图弄清楚如何调整 viewController 的视图(viewController 的 self.view)以匹配弹出框。

我认为视图会自动调整大小以适合弹出框;出于某种原因,它不是。出于某种原因,视图的框架是整个屏幕的大小。

我该怎么做:检测周围视图控制器的大小,以便调整视图大小;或者,使视图自动调整大小以适应弹出框?

注意:这是一个嵌入到其他人的应用程序中的类,所以我无法控制弹出框大小本身。

4

2 回答 2

2

弄清楚我做错了什么:我正在查看 viewDidLoad 方法中的帧大小。出于某种原因,它在那个时候并不总是有效的。

检查帧大小的正确位置是 viewDidAppear;它似乎在那里有效。不过,诚然,我并没有在每一个极端情况下都检查过这个,所以 YMMV。

于 2012-11-29T19:05:44.717 回答
0

覆盖contentSizeForViewInPopover您的视图控制器并返回您需要弹出框的大小。因此,它以某种方式反过来工作,包含的视图控制器让弹出框知道它应该有多大。我认为默认情况下弹出框是 320px x 1100px。如果你覆盖了我上面提到的方法,你就会把它放大到你想要的大小,即使代码嵌入到应用程序中并且你无法控制它。

于 2012-11-28T16:41:05.407 回答