ios - Xcode 自动布局设置

标签 ios iphone xcode autolayout

我有一个项目A,它是在引入新屏幕尺寸之前启动的。将我的 Xcode 升级到 6.0 后,在 Storyboard 和 IB 中,我在开发用户界面时仍然使用 4.0 屏幕。当我在 4.7 屏幕和 5.5 屏幕上测试该项目时, View 可以自动缩放,并且看起来与 4.0 相同。例如,在IB中,我有一个UIImageView,其大小为60x60(在320x568 View 中),当我在iPhone 6模拟器中运行它时, ImageView 大小变为70x70。

最近我创建了另一个项目B,它具有完全不同的初始设置。 (例如,没有 *-Prefix.pch 文件)。我仍然在 4.0 屏幕上开发用户界面,但是当我在 iPhone 6 模拟器上测试时, View 没有缩放。

因此,我开始运行一些测试。两项测试均以 4.0 屏幕尺寸开发。首先,我在项目 A 的 Storyboard 中创建了一个带有标签的 View ,并在 iPhone 6 模拟器中运行。第二次测试我在项目 B 的 Storyboard 中创建了完全相同的 View ,并在 iPhone 6 模拟器中运行。结果完全不同。

测试 1 的结果(项目 A): enter image description here

enter image description here

测试 2 的结果(项目 B): enter image description here

enter image description here

正如我们所看到的,当代码在项目A中运行时, View 可以正确缩放到更大的屏幕,但在项目B中,它无法缩放。

有人可以回答为什么他们不同吗?哪个结果是正常的?因为如果第一次测试结果正常,那么我就不需要担心开发不同尺寸的 View (还是需要考虑3.5英寸)

更新:

似乎我需要澄清一些情况,以防对项目和控制变量使用自动布局,我取消选择使用尺寸类别,因为项目A 以前没有。

更新:

我删除了所有 View Controller ,并在两个项目中再次执行此操作。结果和以前一样。我查看了 Storyboard的源代码,唯一的区别是 View Controller ID。

最佳答案

enter image description here enter image description here

感谢 Brad,问题是一个项目有启动图像,但另一个项目没有。要使 UI 自动缩放,请选择“使用 Assets 目录”。如果没有启动图像,它将显示黑色,但没关系。因此,对于4英寸、4.7英寸和5.3英寸的屏幕,我们可以只开发一种屏幕尺寸,它会自动缩放到其他尺寸,不受限制。

关于ios - Xcode 自动布局设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27882296/

相关文章:

iphone - 搜索显示 Controller 搜索栏

ios - ASIDownloadCache 清除除某些项目外的所有项目

ios - 以编程方式在 iPhone OS 4.0 中获取自己的电话号码

ios - iOS "mobile web app"中的 location.reload(true) 在 safari 中重新打开

ios - "Allow Push Notifications"对话框被关闭一次后如何取回?

ios - Xcode 机器人 : cloning multiple repositories before build

Xcode UI 测试 - UI 测试失败 - 当点击搜索字段 "Cancel' 按钮时无法滚动到可见(通过 AX 操作)

ios - 为什么 UICollectionViewUpdateItem indexPathBeforeUpdate(类型为 NSIndexPath?)需要两个 ! 来解包

ios - 为什么即使我在 NSDateFormatter 上设置了时区,stringFromDate NSString 仍然有 GMT 时间?

ios - navigator.notification.alert 不适用于 ios 的 cordova