【发布时间】:2013-08-01 10:56:26
【问题描述】:
我正在为我的 iOS 应用程序使用导航控制器 (UINavigationController),并且正在使用 Storyboard。
我的视图控制器 (VC) 中有几个 UIViews(充当子视图),并且我在 Xcode 中为这些 UIViews 设置了出口。
我的第一个 VC 在我的导航中充当一种主页(应用程序的主页)。
当第二个 VC 第一次出现时,我的第二个 VC 的所有子视图都会正确显示。
但是,如果我回到主页(或第一个 VC)并返回到第二个 VC,那么我的子视图不会显示。
我在第二个 VC 的 viewWillAppear 方法中设置了一个断点,下面是其中一个视图的框架描述。
第一次:frame = (20 20; 280 150)
去首页VC,第二次来VC:frame = (0 0; 0 0)
你能指导我如何调试这个问题吗?如果需要任何其他信息,请告诉我。谢谢。
【问题讨论】:
-
覆盖
setFrame:并打破它 -
您的视图大小在执行过程中发生了变化。因此,您可以使用 setFrame 如下: ViewName.frame = CGRectMake(x, y, w, h);
-
谢谢。在
viewWillAppear中显式设置frame会起作用,因为它每次都会设置我的UIView 的框架。但我无法弄清楚是什么首先打破了我的框架。有那个方向的指针吗?