我在尝试更新项目以适应iOS8和iPhone6的变化时发现了这个问题。经过一系列的测试和调试,我不知道导致这个问题的原因。我发现的唯一线索是,在iPhone6中创建UIWindow
对象时,横向,UIWindow对象具有与主屏幕不同的角度(方向)(状态栏角度)。在尝试转换UIWindow
对象后,它实际上变成了一个奇怪的大小。我不知道为什么以及如何发生这种情况。非常感谢您的帮助!!
[环境]
Xcode 6.0.1
建造6A317
模拟器:iPhone 6,iPhone 6 +
[问题]
尝试将UIWindow对象调整为全屏时出现奇怪的行为(frame = [UIScreen mainScreen] .bounds)
[正常行为](确定)
1.纵向创建UIWindow对象
2.将设备转为横向
3. UIWindow对象将调整为全屏幕
4.调整大小确定
[异常行为](FAIL)
1.横向创建UIWindow对象
2. UIWindow对象大小正确,但方向错误
3.尝试变换到正确的角度(方向)后,框架原点/尺寸混乱
[测试结果]
测试模拟器:iPhone 4s,iPhone 5,iPhone 5s,iPhone 6,iPhone 6+
环境:Xcode 6.0.1,build 6A317,iOS8模拟器
答案 0 :(得分:5)
将项目升级到新SDK和新设备后,我遇到了完全相同的问题。
只需在项目设置中添加一个空的storyborad作为启动画面,就可以解决这个问题:
答案 1 :(得分:0)
有同样的问题。事实证明我在UIWindow上使用CGRect调用initWithFrame,而不是像素。