我有一个项目 A
在引入新的屏幕尺寸之前启动。将我的 Xcode 升级到 6.0 后,在 Storyboard和 IB 中,我在开发用户界面时仍然使用 4.0 屏幕。而当我在 4.7 屏幕和 5.5 屏幕上测试项目时, View 可以自动缩放,看起来和 4.0 一样。例如,在 IB 中,我有一个大小为 60x60(在 320x568 View 中)的 UIImageView,当我在 iPhone 6 模拟器中运行它时, ImageView 大小变为 70x70。
最近我创建了另一个项目B
,它的初始设置完全不同。 (例如,没有 *-Prefix.pch 文件)。我仍然在 4.0 屏幕中开发用户界面,但是当我在 iPhone 6 模拟器上测试时, View 没有缩放。
因此,我开始运行一些测试。这两个测试都是在 4.0 屏幕尺寸下开发的。首先,我在项目 A
的 Storyboard 的中心创建了一个带有标签的 View ,并在 iPhone 6 模拟器中运行。第二个测试我在 Project B
的 Storyboard 中创建了完全相同的 View ,并在 iPhone 6 模拟器中运行。结果完全不同。
测试 1 的结果(项目 A
):
测试 2 的结果(项目 B
):
我们可以看到,当代码在A
中运行时, View 可以正常缩放到更大的屏幕,但是在B
中,它不能缩放。
有人能回答他们为什么不同吗?哪个结果是正常的?因为如果第一次测试结果正常,那么我就不用担心开发不同尺寸的 View (嗯还是需要考虑3.5英寸)
更新:
似乎我需要澄清一下,以防对项目和控制变量都使用 Auto Layout,我取消选择 Use size classes,因为项目 A
以前没有。
更新:
我删除了每个 View Controller ,并在两个项目中再次这样做。结果和以前一样。我查看了 Storyboard的源代码,唯一的区别是 View Controller ID。
感谢 Brad,问题是一个项目有启动图像,而另一个没有。要使 UI 自动扩展,请选择“使用 Assets 目录”。如果没有启动图像,它将显示为黑色,但没关系。所以对于4寸、4.7寸和5.3寸的屏幕,我们可以只开发一种屏幕尺寸,它会自动缩放到其他尺寸,不受限制。
关于ios - Xcode 自动布局设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27882296/
欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) | Powered by Discuz! X3.4 |