2013-10-22 34 views
0

我们开始将我们的iOS 6应用程序转换为iOS 7.我尝试为我的应用程序创建一个屏幕。我使用Xib文件进行设计,我使用UILabel和UIButtons从上到下设计了屏幕。当我试图在模拟器中运行应用程序时,它显示与xib设计不同。在模拟器中,设计下来,底部UILabel已隐藏。UIViewcontroller的视图框架在意想不到的位置开始

我从viewDidLoad中()(0,64,32,504)得到了self.view.frame。但是,它正确地显示在viewDidAppear (0,0,320,568)

如何在Xcode 5中解决此问题?你能帮我解决这个问题吗?看看你的回答。谢谢。

+0

您是否在xib中添加了必要的约束条件? – Zalykr

+0

是的,我试过self.navigationController.navigationBar.translucent = NO和self.edgesforextendedlayout = uirectedgenone。但是,没有回应。我不知道我是否以正确的方式尝试。 –

回答

0

您不能依赖-viewDidLoad中的框架,因为在此时尚未调整设备的大小。你需要等待-viewDidAppear。

+0

其实这个屏幕是在Xib文件中设计的。这是我第一次面临这个问题。你能请指导我解决这个问题吗? –

+0

您需要详细说明问题所在。在第一段中,你似乎说问题出在模拟器中,但是你说它在-viewDidAppear中显示正确。发布代码和/或屏幕截图。 – RyanR

+0

是的我设计了Xib中的屏幕并在Simulator中启动了底部控件,因此我只是通过viewDidLoad和viewDidAppear代表中的代码检查了框架大小。我无法张贴屏幕截图becoz在办公室:(: –

相关问题