gpt4 book ai didi

ios - 在 UIStackView 的开头和结尾添加填充

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:34:13 27 4
gpt4 key购买 nike

我最近一直在切换到 UIStackView 并尝试用它来完成我的所有布局,它比使用自动布局要容易得多...只有一个异常(exception)。

我有一个使用嵌套 UIStackViews 的布局和一个垂直堆栈 View ,里面是一个水平堆栈 View 。

像这样...

|    Label    |
| Label |
|Button Button|
| Label |

这很好,只是我现在想在按钮和屏幕边缘之间留出空间。我可以在按钮之间设置一个空间,但不能在边缘设置空间。

有办法吗?

我想要的是这个...

|   B     B   |

这两个按钮都有带圆角的背景色。我想要屏幕边缘和背景之间的间隙。

如果这是有道理的。

我只是找不到任何可以让我这样做的东西。

最佳答案

从 iOS 14/Xcode 12 开始,StackView 没有 padding 属性。但是我们可以设置布局边距。

  • 通过界面生成器:

enter image description here


  • 通过代码,可以配置堆栈 View 以相对于其布局边距布置其排列的 subview :

stackView.isLayoutMarginsRelativeArrangement = true

For iOS > 10

stackView.directionalLayoutMargins = NSDirectionalEdgeInsets(顶部:16,前导:16,底部:16,尾随:16)

For iOS <= 10

stackView.layoutMargins = UIEdgeInsets(上:16,左:16,下:16,右:16)


P.S 这种方法的缺点,当 StackView 没有 subview 时,它会保留其布局边距。因此,要删除填充,我们应该通过代码设置一个边缘插入为零的布局边距。

关于ios - 在 UIStackView 的开头和结尾添加填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34739973/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com