在不知道子视图数量的情况下设置视图子视图的约束

时间:2016-03-22 02:29:08

标签: xcode autolayout nslayoutconstraint

因此,我的观点设置非常简单,但我无法弄清楚如何执行特定任务。

所以我需要做的是接受一个字符串数组,这些字符串中的每一个都是国家ISO3格式代码,而这些代码又有一个与之关联的相应标志。现在我将标志添加到视图后,我需要能够设置所有约束。

所以首先我将imagesviews添加到视图中,工作正常,但现在当我到达updateConstraints方法时,我不确定如何继续,因为我有一个未知数量的子视图。

因此,每个子视图将被放置在距离它之前的标志大约5个空格处,并且图像的顶部和图像的底部应该跨越视图高度。

如何编写处理任意数量子视图的代码?

1 个答案:

答案 0 :(得分:1)

  

首先我将imagesviews添加到视图

在执行此操作时,还要添加每个视图的约束。由于您循环遍历标记/图像视图,因此知道是否存在先前的图像视图,如果您需要一点点关注,则可以参考它。因此,实际上没有很多代码 - 它是一个循环,而不是很长的循环 - 并且它并不困难。

作为替代方案,我想你可以使用UIStackView(如果你没有在iOS 8上运行)。它只会拍摄所有的图像视图,并为您提供限制;所有必须做的就是决定它的大小,你可以通过计算图像视图来做到这一点。