[英]iOS - Different stackviews for size classes
我正在使用UIStackView
在一个tableview单元xib中进行布局以使调整大小变得更加容易,并且我还在使用size类,因为手机和平板电脑之间存在布局差异。
由于某些原因,我必须为每个大小类使用不同的stackview。 说出stackview1
于iPhone的stackview2
和stackview2
于iPad的stackview2
。 现在我已经搬到label1
到stackview1
在iPhone尺寸等级,转换到iPad的大小等级和想转移label1
到stackview2
从stackview1
(它是灰色的)。 但是一旦执行stackview1
此操作并切换回iPhone尺寸级别, Label1
便会从stackview1
移出,并且iPhone布局stackview1
紧。
想知道是否有人之前遇到过这种情况并得到了解决方案?
更新
为了进一步澄清,
我纯粹是通过约束来实现以下两个布局,而同事们使我确信,使用UIStackView进行布局可以更轻松地适应UI更改。 例如,在下面的布局中, label1
和label3
之间有一个距离约束(12),如果我想在label1
和label2
隐藏/为零时让label3
向上移动,我将不得不手动将距离约束设置为0。如果通过UIStackView
,将label1
和label2
设置为隐藏,那么我们就都设置好了。 这只是一个例子,还有更多这样的变化。
我对sizes类需要不同的UIStackView
的原因是由于设计差异。
使用相同的stackview
似乎无法实现目标。 我最终使用一个xib解决了它,并部分地应用了stackview。 在上面的示例中,我将标签1、2和3放在了stackview中,因为这三个标签的布局可以在不同大小的类中重复使用。 其余约束单独设置而无需使用stackview。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.