HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了在iOS6中,UIViewController在应用启动时的视图位置是错误的大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在iOS 6之前,IEverything工作正常.我像往常一样在UINavigationController中有一个UIViewController子类.它的观点正在缩小约20 px,好像顶部有另一个状态栏.当我推回并弹出视图时.视图回到了正确的位置.我发现它是因为UIViewControllerWrapperView(通过使用self.view.superview获得)框架在iOS 6中以某种方式出错.

在viewDidAppear中执行NSLog

在应用程序启动…

self.view.frame: {{0,0},{768,891}} // was {{0,911}} in iOS5.1
self.view.superview: <UIViewControllerWrapperView: 0x9dddb80; frame = (0 20; 768 891); autoresize = W+H; layer = <CALayer: 0x9dddc30>> 
// was (0 0; 768 911); in iOS5.1

推送和弹出视图控制器(正确值)后…

self.view.frame: {{0,911}}
self.view.superview: <UIViewControllerWrapperView: 0x9dddb80; frame = (0 0; 768 911); autoresize = W+H; layer = <CALayer: 0x9dddc30>>

它从未发生过.这在iOS 6中如何出现?

解决方法

这是我目前在viewDidAppear中的脏修复.

// fix wrong UIViewControllerWrapperView frame by moving up and extending it BACk
CGRect wvFrame = self.view.superview.frame;
if (wvFrame.origin.y > 0) {
    wvFrame.size.height += wvFrame.origin.y;
    wvFrame.origin.y = 0;
    self.view.superview.frame = wvFrame;
}

大佬总结

以上是大佬教程为你收集整理的在iOS6中,UIViewController在应用启动时的视图位置是错误的全部内容,希望文章能够帮你解决在iOS6中,UIViewController在应用启动时的视图位置是错误的所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。