我是iOS开发的新手,我在使用堆栈视图方面遇到了一些问题,这在早期版本的Xcode中似乎不是问题,或者可能是我的过程。如果我在屏幕上有4个对象,我将它们嵌入到水平堆栈视图中,它会将所有对象缩小到自己选择的大小,虽然我可以更改宽度并将其设置为相等填充,它只是将物体隔开,而不是拉伸它们,而且没有办法设置高度。这是怎么回事?
我希望堆栈视图保持它开始时的大小,对象只是嵌入其中。我希望能够在需要时调整堆栈视图中对象的大小。我希望能够设置堆栈视图的高度。实际发生的是,一旦对象嵌入堆栈视图,整个东西的大小调整到原始大小的一小部分,但堆栈视图的高度属性变灰。
1条答案
按热度按时间vlju58qv1#
UIStackView
* 根据子视图内部内容大小、子视图大小约束、堆栈视图对齐和分布属性、堆栈视图本身的约束设置等来排列其子视图 *。设置哪些约束和设置哪些属性将取决于您的最终布局目标。
例如,看看你的第一个屏幕截图(我假设这是4个按钮),当设备旋转时会发生什么?
保持按钮的大小和间距相同,水平居中:
的数据
保持前导和尾随相同,并将按钮展开:
的
保持前导和尾随相同,保持间距相同,保持按钮1:1的比例......并缩放项目以适应宽度:
的
在你的问题中,你只描述了你看到的事情,而不是你希望发生的事情,所以让我们从简单的开始。
我们希望:
60x60
点下面是我们将得到的约束:
的
所以...
我们在堆栈视图上设置这些属性:
UIStackView
是一个非常强大的布局工具。理解它的最好方法是使用它。前往Google(或您最喜欢的搜索引擎)搜索UIStackView tutorial
.