【问题标题】:Autolayouts Set Portrait and Landscape Views iOS自动布局设置纵向和横向视图 iOS
【发布时间】:2015-05-12 16:02:30
【问题描述】:

我有一个视图,它有 6 个图像视图,用于根据我的逻辑显示图像,这个视图可以横向和纵向查看。

在纵向模式下,它会显示类似的图像

1  2
3  4
5  6

我想在横向模式下显示这个,比如

1  2  3
4  5  6

如何在这些 imageViews 上使用约束,以便获得所需的结果。

【问题讨论】:

  • 看起来你需要UICollectionView 而不是自动布局。
  • 不,不使用 UICollectionView 的原因是我正在从 web 服务加载图像,并且代理和 weservices 发生冲突,这就是为什么我必须使用自定义滑动手势功能创建此自定义视图的原因。 .
  • 我认为解决委托冲突会更容易然后创建您自己的集合视图。
  • 您的目标是 iOS 8 吗?您当然可以利用 Size Classes 来实现您的目标。虽然我也认为具有简单流布局的分页集合视图可能更适合您的需求。
  • 不仅是 iOS 8,iOS 7 也将使用它,冲突是当滚动视图滚动时,我需要用当前页码点击我的 web 服务,当那个响应服务来了,我需要我的视图来显示一个加载器,直到收到并解析响应,图像开始加载。问题是在collectionView的cellForRowAtIndexpath之后检测滚动视图导致崩溃,因为这些索引中没有任何内容可以显示,因为这些图像尚未来自网络服务..这就是我必须这样做的原因。

标签: ios objective-c iphone xcode6


【解决方案1】:

您正在谈论横向和纵向模式的不同设计。因此,您应该使用尺寸等级。

使用 size 类,您可以为横向模式创建一组约束,为纵向模式创建另一组约束,并为这两种模式创建另一组。

示例(来自我添加的第一个链接):

我对学习 SIZE CLASSES 问题的建议(我检查了很多):

http://www.mangrove.com/en/journal/2015-01-21-auto-layout-for-existing-ios-projects/

http://mathewsanders.com/designing-adaptive-layouts-for-iphone-6-plus/#aspect-ratio-constraint

http://www.imore.com/adaptive-ui-ios-8-explained

祝你好运!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-28
    • 2013-08-15
    • 2014-12-20
    • 1970-01-01
    相关资源
    最近更新 更多