【问题标题】:iOS 7 Simulator vs Real iPhone unexplained differencesiOS 7 模拟器与真 iPhone 无法解释的差异
【发布时间】:2013-09-24 03:29:06
【问题描述】:

我正在修复 iOS 7 并遇到问题。当我在真实设备(iPhone 4S iOS 7)上运行我的应用程序时,屏幕看起来与我在 iPhone 3.5 英寸 iOS 7 模拟器上运行相同应用程序时不同。我试图了解为什么以及这是什么原因,如果有人可以提供帮助,那就太好了!

模拟器的第一张截图,设备的第二张截图:

已解决:真 iPhone 上的应用程序具有基本 SDK 6.0,而模拟器上的应用程序具有基本 SDK 7.0。所以我猜真实设备知道如何弥补低 SDK 基础,不像模拟器完全在 SDK 7.0 环境中表现,这就是它显示不同的原因。谢谢!

【问题讨论】:

  • 查看您的界面构建器。属性检查器中有一个属性“扩展边缘”。尝试更改顶部下方的条,看看它是否看起来更好。另外,请尝试更改同一选项卡中的“大小”属性。
  • 嘿!我找不到这个属性。但我想正确理解:这意味着,我在设备上看到的是应用程序看起来的“真实”方式?基本上,这个属性只适用于模拟器?
  • iPhone 4S 是 4" 屏幕,您的应用在 3.5" 上看起来会有所不同。我正在谈论的选项卡是右侧菜单的第四个(在您选择视图控制器之后)。解决您的问题的方法是将“Size”选项更改为3.5,并更改您需要更改的内容:)
  • 我非常感谢您的 cmets 和帮助,但据我所知,iPhone 4 的屏幕为 3.5,而 iPhone 5 的屏幕为 4 英寸。请参阅参考:Apple iPhones Deatils。我仍然不明白为什么模拟器与设备不同。
  • iPhone 4S 是 3.5" 屏幕,在 iPhone 5 的 4" 屏幕上看起来会有所不同

标签: iphone objective-c xcode simulator ios7


【解决方案1】:

对于阅读本文的其他人,Roy 上面的“已解决”评论是正确的。

更新后我进入了 Xcode,它已自动将我的 Base SDK 更新到最新的“iOS 7.0”。

将其改回“iOS 6.1”后 - 模拟器和设备现在都可以正常工作,正如在 iOS 7 上所预期的那样。

不是想抢夺 Roy 的风头(他为我节省了很多时间 - 谢谢你),只是向其他人总结如何快速解决问题。

拉尔夫

【讨论】:

    【解决方案2】:

    与建议的解决方案相反,Apple文档建议将Base SDK设置为最新的iOS https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/ConfiguringYourApp/ConfiguringYourApp.html#//apple_ref/doc/uid/TP40012582-CH28-SW37,因此必须有更好的解决方案

    【讨论】:

    • 确实如此。如果我将我的项目恢复到最新的 iOS 7.0 - 这种行为会重新开始。也许这是一个测试问题,但我没有足够的信心按照 Apple 的建议将我的应用程序发布到应用程序商店 - 一切都很奇怪!如果有人对此有更新,那将是非常有趣的。
    【解决方案3】:

    我也遇到了同样的问题..

    我通过在视图控制器的 viewDidLoad 方法中添加以下代码来解决。

    if ([self respondsToSelector:@selector(edgesForExtendedLayout)])
            self.edgesForExtendedLayout = UIRectEdgeNone;
    

    希望对您有所帮助..谢谢。

    【讨论】:

      猜你喜欢
      • 2013-10-04
      • 1970-01-01
      • 1970-01-01
      • 2013-09-09
      • 2011-11-18
      • 1970-01-01
      • 2015-12-22
      • 2016-01-03
      • 2011-03-04
      相关资源
      最近更新 更多