我正在使用UIStackView
在我的一个tableview单元xib中进行布局以使调整大小变得更加容易,并且我还在使用size类,因为手机和平板电脑之间存在布局差异。
由于某些原因,我必须为每个大小类使用不同的stackview。对于iPhone说stackview1
,对于iPad说stackview2
。现在,我已将label1
移至iPhone尺寸类的stackview1
中,切换到iPad尺寸类,并希望将label1
从stackview2
移至stackview1
(变灰)。但是一旦执行完此操作并切换回iPhone尺寸级别,Label1
就会从stackview1
中移出,iPhone的布局就会搞砸。
想知道是否有人之前遇到过这种情况并得到了解决方案?
更新了
为了进一步澄清,
label1
和label3
之间有一个距离约束(12),如果我希望label3
和label1
隐藏/ nil后label2
向上移动,则我将不得不手动将距离约束设置为0。如果通过UIStackView
,将label1
和label2
设置为隐藏,我们就全部设置好了。这只是一个例子,还有更多这样的变化。 UIStackView
的原因是由于设计差异。 电话布局
平板电脑布局
最佳答案
看起来使用相同的stackview
无法实现目标。我最终使用一个xib解决了它,并部分地应用了stackview。在上面的示例中,我将标签1、2和3放在了stackview中,因为这三个标签的布局可以在不同大小的类中重复使用。其余约束单独设置而无需使用stackview。
关于ios - iOS-大小类的不同stackviews,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50431047/