NSLayoutConstraint:在stackview中对视图进行布局是不是很好(或不是)?

时间:2018-05-22 12:16:42

标签: ios autolayout nslayoutconstraint uistackview

我有一个图像的水平堆栈视图,在堆栈视图下方我需要显示一个指向当前所选图像的箭头(在堆栈视图中),我想,因为堆栈视图中的视图和箭头图像视图有一个共同点祖先视图,我应该能够将箭头固定到堆栈视图中所选图像视图的水平中心。但这是一个好习惯吗?有没有更好的方法呢?

Stack View: | IMG1 | IMG2 | IMG3 | Arrow Icon: |

谢谢!

1 个答案:

答案 0 :(得分:0)

这样做完全没问题 - 只需确认您没有任何冲突约束。请记住,堆栈视图实际上会为其排列的子视图生成约束,因此如果您执行类似(例如)为IMG1设置固定宽度的操作,则可能会遇到约束错误。但只要你没有得到任何含糊不清或相互矛盾的约束,你就会好起来。

另一种可能的方法是将每个图像(IMG1,IMG2,IMG3)改为自定义UIView子视图,并使用某种isCurrentlySelected属性来显示箭头。