在 4.0.1 上运行流畅的应用程序在 4.2.1 上运行时会产生扭曲的屏幕,即屏幕稍微向左移动了 20%。安装了 iOS 4.0.1 和 4.2.1 的手机是 2 部不同的手机。可能是什么问题呢?
我们观察到,无论我们添加为子视图,这个问题都会发生。
谢谢,萨蒂什
根据您的描述,我认为要么是您没有正确设置正确view.autoresizingMask
,要么是视图的布局方式发生了微妙的变化。
尝试设置显式移动的视图框架,看看会发生什么。
[view setFrame:CGRectMake(0, 0, 320, 460)]
一些相关的代码和/或屏幕截图肯定会有所帮助。另外,它是 UIKit 应用程序还是 Cocos2D 游戏?
编辑:由于您无法提供代码(或精简的示例版本),我将发布一些我一直在使用的代码。
通常,当我添加子视图以“填充”父视图时,我必须执行以下操作:
UIView *parent = nil; // find parent view
UIView *child = nil; // child view to add to parent
[parent addSubview:child];
CGRect frame = [parent frame];
frame.origin.x = 0;
frame.origin.y = 0;
[child setFrame:frame];
如果你这样做了,但它仍然不起作用,我相信问题可能出在其他地方(即你有没有被layoutSubviews
任何机会覆盖?或者手机越狱了?)
我非常怀疑这将是一个 UIKit 错误,但这是完全可能的。