3 uiImageView的布局使用swift并排

时间:2017-10-01 14:32:58

标签: ios swift uiimageview ios8

我想为ios 8+创建一个控件,我们有3张图像。在中央图像中,大图像和左图像/右图像都很小。

我必须使用Stack Layout在swift中创建一些代码,但它不能在iOS 8中工作,因为它可以从ios 9中获得。所以需要更改它。我应该用什么来保持图像在一起(左下角)?

我还有一个问题是,我只需要在大的中心图像上进行平移手势,而不是在小的左右图像上。因此,当我触摸大图像时,我可以在屏幕上移动所有三个图像。目前,如果我触摸所有3个动作中的任何一个。

功能

  • 小左/右图像:用作运行快速功能的按钮

  • 中间图像:在平移手势上拖动屏幕周围的所有三个

enter image description here

1 个答案:

答案 0 :(得分:2)

根据您的要求,您有3种选择来创建图像滑块。

  1. 使用滚动视图(UIScrollView
  2. 使用集合视图(UICollectionView
  3. 使用页面控制器
  4. 以下是简单/基本逻辑,您应该如何以及如何使用它来实现滑动图像。

    使用滚动视图(UIScrollView

    1. 在滚动视图中以相等宽度添加三个图像
    2. 根据您的要求(大于其他要求)设置中间图像的高度
    3. 使用AutoLayout约束将任何一个图像(可能是中间)的宽度设置为等于或等于设备屏幕的等效百分比(80%相等)。
    4. 滚动视图会根据水平内容大小自动滚动。您无需添加平移手势。
    5. 您还可以启用滚动视图的分页。

    6. 使用集合视图(UICollectionView

      1. 添加具有三个(静态)单元格或单个动态单元格的集合视图(您需要选择将来如何更新此功能。如果选择单个动态单元格,则可以通过添加其数据轻松地在滑块中添加更多图像在未来的数据源变量中。)
      2. 仅在集合视图中启用水平滚动。
      3. 使用项目的索引路径(indexPath.item == 1)更新(使其更大)数据源方法中的图像高度。
      4. 集合视图也有平移手势。您无需实现它。
      5. 您也可以启用分页。
      6. 注意:将图像/单元格宽度设置为等于设备屏幕或等效。

      7. 使用页面控制器 这里有很好的参考教程,“如何使用页面视图控制器”


        我不建议使用此选项(页面视图控制器),但您已提供有关需求范围的完整详细信息(视图控制器级别或简单的子视图滑块),因此这是图像滑块的选项还