我的观点是显示y = -20 dispite,其框架设置为y = 0.旋转后,它会快速回到y = 0

jam*_*one 2 iphone objective-c ipad

我开始创建一个基于通用窗口的应用程序.从iPhone版本开始,我创建了一个UIViewController和相关的nib.

我的应用代表:

rootViewController = [[RootViewController alloc] initWithNibName:nil bundle:nil];
[window makeKeyAndVisible];
[window addSubview:rootViewController.view];
return YES;
Run Code Online (Sandbox Code Playgroud)

我的RootViewController:

- (void)viewDidLoad {
[super viewDidLoad];
adBannerView = [[ADBannerView alloc] initWithFrame:CGRectZero()];
[self.view addSubview:adBannerView];
Run Code Online (Sandbox Code Playgroud)

}

我已经尝试了实现按钮而不是adBanner,我得到了相同的结果.

我的RootViewController的nib没有被更改,因为x-code为我创建了它.我的MainWindow_iPhone.xib也是库存.

是什么导致了这个?

更新

更改应用程序的方向后,adBannerView(或按钮...)将在y = 0处捕捉到正确的位置.我已经尝试将adBannerView的y位置设置为20,可能是为了补偿状态栏,这使得所有内容都正确显示,直到我改变方向.然后一切都向下移动20像素,并在adBannerView和状态栏之间留出20像素的空间.

Mic*_*ler 6

尝试添加下一行viewDidLoad(右后[super viewDidLoad];):

self.view.frame = [[UIScreen mainScreen] applicationFrame];
Run Code Online (Sandbox Code Playgroud)