如何在 UIStackView 行的侧面和行之间添加按钮

How to add a button to the side and in between UIStackView rows

想象一个包含两个控件的水平堆栈视图。希望控件的类型无关紧要。让我们说 UITextFields。它们被设置为通过在其父级堆栈视图上均匀分布来占据宽度的 50%。

现在想象一下,我想添加不止一个这样的东西。为了简单起见,将其中两个嵌套在一个垂直的 UIStackView 中。所以现在我们有四个文本视图,每个文本视图占据父级垂直堆栈视图的四分之一。

我的问题是这样的。对于每一对文本字段,我怎样才能在该文本字段与其下方的右侧之间的间隙中获得一个按钮。因此,对于每一对,在顶部一对和底部一对文本字段之间的间隙中心,右侧和下方都有一个按钮。

想法是制作一个由两个字段和右下角的加号组成的控件。点击加号将允许附加一组相同的控件。

谢谢我提前了。对不起,如果这没有什么意义。

我应该补充一点,按钮应该与两个文本字段的垂直 space 重叠。

好的,谢谢。我将添加一个图像。想象一下,除了最右边的那些字段之外的所有字段都是文本字段。最右边的是按钮。这些按钮会在左侧添加一组新的文本字段。

自从最初写这篇文章以来,我脑子里有了一些想法。在我的脑海中,您可能只有一个垂直堆栈视图。该垂直堆栈视图将包含一个常规 UIView,其中包含一对文本字段和右侧的水平堆栈视图。这些将嵌套在水平堆栈视图中,其中文本字段将对齐到左侧的顶部,按钮的中心或底部对齐到右侧。

有帮助吗?

当您点击最右边的按钮时,您会看到一对新的文本字段和一个新按钮。

好的,我想我有所进展。现在我所要做的就是找出如何完全以编程方式完成它,这样我就可以动态添加视图...

让按钮处于它们自己的垂直堆栈视图中,每个按钮的高度与控件对的行相同,但按钮垂直堆栈视图的顶部布局边距将设置为高度的一半控件对,以便按钮始终出现在中间。

总而言之,您将拥有一个水平堆栈视图,其中包含两个垂直堆栈视图 - 一个带有成对的控件,一个带有按钮。你会在每次点击按钮时添加一个按钮和一对控件(它们排列在它们自己的水平堆栈视图中)