gpt4 book ai didi

iphone - 关闭 ModalViewController 后 UIScrollView 的内容发生了变化

转载 作者:行者123 更新时间:2023-12-03 19:23:35 25 4
gpt4 key购买 nike

我有一个分页 ScrollView 。每个页面都有一个 View Controller (buttonViewController)来管理按钮网格。如果按下其中一个按钮,buttonViewController 会模态弹出另一个 View Controller (detailViewController)。

问题是,当我关闭模态视图 Controller 时,可见的 ButtonViewController 向下移动了大约 20 像素。奇怪的是,只有可见页面发生了移动。如果我滚动到已加载的另一个页面,它仍然处于正确的位置。

我的问题与dismissing modalViewController moves main view buttons around iphone基本相同

但是,该问题的公认答案假设状态栏是隐藏的。我没有隐藏应用程序中的状态栏。

还有其他想法吗?

还有一个注意事项:这种转变仅在我第一次启动模态视图 Controller 时发生。如果我继续打开和关闭模态视图 Controller ,一切都会保持不变。

进一步说明:如果我添加以下代码:

    CGRect frame = self.view.frame;
frame.origin.y=0;
self.view.frame = frame;

在我关闭模态视图 Controller 后,我就可以解决这个问题了。框架似乎在 y 方向上移动了 20 个像素。但我仍然不知道是什么导致了这一举动。

最佳答案

嗯,我遇到了这个问题,这是由于我的第一个 viewController 的设置方式(在 UIWindow 上)造成的,这很奇怪,因为我以前从未发生过这种情况,我观察到的行为是,当您添加点 (0,0) 处的 subview 将与状态栏重叠,这并不常见,通常 View 知道状态栏并且它们的行为适当。作为一个副作用,当一个人按下一个模态视图来取消状态栏时,在关闭它之后,我看到了与您所看到的相同的问题。我要做的修复是将 UIWindows View 设置为 Nib 中的 Controller View ,这似乎解决了所有问题。我再次不知道为什么简单地使用 CGRectMake(0,0,320,460) 以编程方式添加到窗口会出现这种奇怪的行为,因为我一直在为我之前的所有项目执行此操作并看到正确的行为。但当我把它安装在 Nib 上时,它按预期工作了。也许这也是你的问题。

关于iphone - 关闭 ModalViewController 后 UIScrollView 的内容发生了变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1186492/

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