首页 文章

Any-Any大小类被ios7忽略

提问于
浏览
8

我正在为iOS7和8 iPhone开发 . 由于iOS7不支持紧凑高度大小类,我认为解决这个问题的共识是使用任意大小的类来构建横向iPhone布局,并使用纵向宽度常规高度(cWrH)大小类来实现肖像iPhone布局 .

我在any-any中对视图设置了约束,然后将cWrH中的约束常量修改为特定于该size类 . 但是,iOS7设备和Xcode预览会忽略any-any约束,并对纵向和横向使用cWrH约束 .

我不知道为什么会这样 . 我想要做的就是根据方向设置不同的约束 .

使用最新的Xcode 6.0.1可以轻松复制 .

半相关:How can Xcode 6 adaptive UIs be backwards-compatible with iOS 7 and iOS 6?

屏幕截图如下:

x and y of rect at 0 in Any-Any

y=100 for cWrH size class only

1 回答

  • 0

    根据您的问题,您所做的是在Any-Any Size Class中给出了前导,顶部,高度和宽度约束 .

    所以现在它的位置将固定在横向和纵向的任何设备上 . 现在,当您将尺寸类更改为紧凑宽度并在顶部约束中进行更改时,它将同时影响纵向和横向 .

    使用Any-Any的大小类,您需要做什么才能将控件放在View控制器中,并设置您希望在纵向和横向中保留的约束 .

    例如:如果要保持高度和宽度固定,请在Any-Any Size Class中给出这些约束 .

    在Any-Any Size Class中设置约束将使这些约束对于纵向和横向都保持相似 .

    1.)在纵向中设置前导和顶部约束,您可以使用 width- Compact, height-Regular .

    2.)在横向中设置前导和顶部约束,您可以使用 width- Any,height-Compact .

    访问下面的链接有很好的解释,您将解决与使用大小类自动布局相关的大多数问题:

    http://mathewsanders.com/designing-adaptive-layouts-for-iphone-6-plus/

    希望这能解决你的问题 .

相关问题