3.5屏幕上的视图尺寸错误

时间:2013-09-06 19:31:49

标签: iphone ios ios-simulator

在3.5英寸iPhone模拟器上运行我的iOS应用程序时,self.view.frame.size.height报告548px。解决这个问题的正确方法是什么?

2 个答案:

答案 0 :(得分:2)

我假设您在viewDidLoad中看到此行为,对吗? 在viewDidLoad中,屏幕尺寸不是最终尺寸。您应该只依赖于viewWillLayoutSubviews方法中的视图框架。

答案 1 :(得分:0)

这是因为你是从viewDidLoad调用这个吗?

我打赌在这个函数中调用NSLog而不是返回正确的高度;

-(void)viewDidAppear:(BOOL)animated {
    NSLog(@"%f", self.view.frame.size.height);
}

您应该使用self.view.bounds代替self.view.frame

有关查看此SO的原因和方式的详细信息: "Incorrect" frame / window size after re-orientation in iPhone