当我们的应用程序在xcode 5上针对ios7-sdk编译时,一切都崩溃了. UI对象未对齐,标签无法读取等因此我们想要针对ios6.1 sdk编译我们的代码,但是在ios 7上运行它.
在Xcode 5上我安装了ios 6.1 sdk by copying it from Xcode 4.6.3 dmg as described on this post并在构建设置上将Base SDK更新到ios 6.1,但是当在ios 7模拟器上运行应用程序时,用户界面不会回退到ios 6.1.然而,如果应用程序针对运行ios 7的物理iphone进行测试,它会回退到ios 6.1.
在运行ios6-sdk编译的应用程序时,如何使ios 7模拟器回退用户界面,以便我们可以在模拟器上重现该错误?
解决方法 如果我理解你的问题……我的应用程序遇到了同样的问题,需要保留iOS6.1接口,内置Xcode 5并在iOS7中运行.我们的界面也搞砸了,错位和工具栏缺少按钮.我们稍后会修复它7,但现在没有时间,但需要它在iOS7上运行并且仍然在Xcode 5中构建.
所以这就是我做的:
(我想发布一些屏幕截图,但没有我的mac方便,如果需要可以稍后获得)
>我保持Xcode 4.6.3与Xcode 5一起安装.
>我将6.1 SDK中的符号链接添加到Xcode 5安装中. (我发现了一个SO问题,会找到一个链接)或者你可以像你一样安装它.
(可能不需要这两个选项,但我们最终在测试中使用它们,它可以工作,甚至是新的5S 64bit手机)
>在构建设置中我选择构建体系结构来使用标准的非64位armv7选项,不要选择“包括64位”选项.
>同一个地方,仅建立活动架构为是
然后…
>也在Build Settings中,将Base SDK设置为iOS 6.1. (我相信这是让它发挥作用的关键)
>应用程序目标的常规选项卡,将部署目标设置为6.1(我们的目前仍在5.1上)
>在我们的故事板中,选择file Inspector,在我选择的界面构建器部分中打开Xcode 4.6,构建iOS 5.1及更高版本,然后查看iOS 6.1和更早版本. (我的自动布局未经检查,我们不使用它)
关于“打开”的最后一个选项的警告.如果选择“在Xcode 4.6中打开”,您将失去iOS7的故事板编辑功能.在我的情况下,我现在不在乎,因为我希望它仍然保留在4.6个视图中.要时刻铭记在心.我想你可以把它换回去,但还没有测试过.
在链接/安装6.1 SDK后,您应该能够在应用程序中运行时选择所需的iOS版本以在模拟器中使用.您将在顶部工具栏的Active Schema下拉列表中看到它.在我的情况下,我可以选择iPhone Retina(4英寸)及以下,我可以选择iOS7或6.1.对我来说有趣的部分是,通过上面的设置,我可以在模拟器中运行我的应用程序,它看起来像iOS6,即使我选择iOS7作为模拟器活动架构.它甚至可以在64位模拟器中工作,在我的设置中,它只会显示iOS7选择.
至少这种方式我可以在Xcode 5中构建和工作,ad-hoc为iOS7用户分发应用程序,但保持iOS6样式,放置和按钮完好无损.现在我可以花更多的时间转换到iOS7样式,但仍然可以修复错误并更新应用程序,就像它是iOS6.1一样.
我希望这是有道理的,我希望它能回答你的问题.我希望我记得我所做的一切!如果我想到的话,我会增加更多.
总结以上是内存溢出为你收集整理的iphone – ios 7模拟器不会为ios 6.1 sdk编译的应用程序的后备用户界面全部内容,希望文章能够帮你解决iphone – ios 7模拟器不会为ios 6.1 sdk编译的应用程序的后备用户界面所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)