【问题标题】:Building interfaces for 3.5-inch iPhones in Xcode 6在 Xcode 6 中为 3.5 英寸 iPhone 构建接口
【发布时间】:2014-08-05 12:16:36
【问题描述】:

在 Xcode 6 中,为不同尺寸的设备完成布局的方式有所改变:我们现在有了尺寸类。但是我怎样才能为 3.5 英寸的 iPhone 布置接口呢?

“紧凑”高度等级似乎不适用于此处。我知道我可以更改约束/压缩阻力(等)值,但就我而言,我希望能够更改此设备大小的字体大小。

这完全不可能吗?我意识到 iOS 8 移除了对 iPhone 4(但不是 4S)的支持。我们也不能都针对纯 iOS 8,需要支持 7 甚至 6。

【问题讨论】:

  • @GuillaumeAlgis 在任何版本的操作系统上都没有提到 iPhone 4。
  • 是的,抱歉,忘记了 4S 也有 3.5" 屏幕。如果没有,问题将与知道 iOS7 及更早版本是否支持 Size Classes 相同,因此我之前的评论. 再次,对不起。

标签: ios objective-c xcode interface-builder


【解决方案1】:

似乎没有任何方法可以使用尺寸等级来隔离特定的设备尺寸。我猜苹果并不打算将此功能用于仅根据屏幕尺寸构建不同的布局,而是着眼于更广泛的概念,例如方向和设备类型(iPhone、纵向或 iPad、横向)。换句话说“iPhone 4/4s、5/5c/5s 或 6/6+ 没有不同的设计”...

我遇到了与 OP 完全相同的问题,尽管我只想为 3.5" 屏幕提供不同的布局,但我最终诉诸于删除约束并以编程方式调整布局,仅适用于 3.5" 屏幕。

【讨论】:

    【解决方案2】:

    iPhone 3.5 英寸将具有以下尺寸等级:

    • Compact w Regular h - 纵向
    • Compact w Compact h - 横向(iPhone 3.5 英寸独有)

    所以这是您可以用来为 iPhone 3.5 英寸操作的唯一尺寸等级。

    根据'@Guillaume Algis'How can Xcode 6 adaptive UIs be backwards-compatible with iOS 7 and iOS 6? 提供的链接,似乎某些尺寸类确实适用于 iOS 7

    但是没有关于它们在 iOS 6 中的支持的信息,即使在 iOS 7 中仍然存在问题。

    如果您确实需要支持 iOS 6 和 7,并且您对 AutoLayout + 多个故事板/xibs 用于不同的设备习惯方法没问题,那么您可以使用文件检查器简单地禁用您的故事板/xibs 的大小类,方法是取消选中“使用大小类”复选框。

    【讨论】:

    • Compact / Regular 不是也适用于 4 寸手机吗?
    • 我刚刚测试过,它也适用于 4、4.7 和 5.5 英寸的手机。
    猜你喜欢
    • 2015-05-03
    • 1970-01-01
    • 2014-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-06
    • 1970-01-01
    相关资源
    最近更新 更多