UIView调整问题,使用iOS模拟器在iPhone / iPad上有不同的结果

时间:2014-03-02 13:54:20

标签: ios iphone objective-c ipad uiview

我正在制作一款非常简单的iphone / ipad游戏。在故事板上游戏只有一个视图,我添加了一个UIView填充整个视图并称之为gameView。我在启动时以编程方式将对象放在gameView上。

我在viewDidLoad中调整gameView的大小,以便它适用于iPhone 3.5“,4”和iPad。这适用于两种尺寸的iPhone,但我在iPad上出现了奇怪的错误(我使用的是iPad模拟器,因为我没有iPad)。

在iPhone上有一个位于屏幕底部的绿色块,但在iPad上,应该位于底部的绿色块大约是屏幕上方的四分之一!

我用来调整视图大小的代码是:

[self.gameView setFrame:self.view.frame];

我的代码是否有问题,或者这可能是iOS模拟器问题?

1 个答案:

答案 0 :(得分:1)

要使子视图填充其超级视图,您必须使用superview的界限。

self.gameView.frame = self.view.bounds;

如果您不知道差异,请阅读:
Cocoa: What's the difference between the frame and the bounds?