gpt4 book ai didi

ios - 在 iOS6 中,应用启动时 UIViewController 的 View 位置错误

转载 作者:可可西里 更新时间:2023-11-01 05:46:16 24 4
gpt4 key购买 nike

IEverything 在 iOS 6 之前工作正常。我像往常一样在 UINavigationController 中有一个 UIViewController 子类。它的 View 缩小了大约 20 像素,就好像顶部还有另一个状态栏一样。当我按下并弹出 View 时。 View 回到了正确的位置。我发现这是因为 UIViewControllerWrapperView(通过使用 self.view.superview 获得)框架在 iOS 6 中以某种方式出错。

viewDidAppear 中执行 NSLog

在应用启动时......

self.view.frame: {{0, 0}, {768, 891}} // was {{0, 0}, {768, 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

在推送和弹出 View Controller (正确值)之后 ...

self.view.frame: {{0, 0}, {768, 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;
}

关于ios - 在 iOS6 中,应用启动时 UIViewController 的 View 位置错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12599244/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com