堆栈视图包装元素

时间:2019-06-14 21:34:20

标签: swift autolayout uistackview

我的整个容器是一个垂直的堆栈视图。

在其中,我想有两个具有动态生成内容的按钮。

对于较大的设备(两个按钮的文本都适合屏幕尺寸),我希望两个按钮并排放置。

在较小的设备上,我希望第二个按钮自动换行到第二行,因为两个文本都不适合,而不是截断两个文本之一。

您将如何完成这样的事情?

1 个答案:

答案 0 :(得分:1)

没有要添加的任何代码,但是我要做的是将两个按钮放入堆栈视图。

然后在视图或视图控制器中使用一些逻辑,这些逻辑可以执行...的操作

buttonStackView.axis = screenWidth < threshold ? .vertical : .horizontal

将阈值设置为您希望发生切换的任何宽度。

这假设您的意思是像iPhone 5一样小,像iPhone X一样大。

对于iPhone和iPad,您可以使用屏幕的尺寸类别,而不是磅值。