如何解决嵌套堆栈视图的布局问题?

Posted

技术标签:

【中文标题】如何解决嵌套堆栈视图的布局问题?【英文标题】:How to solve Layout issues with nested StackViews? 【发布时间】:2020-07-17 17:15:35 【问题描述】:

在对所设计的 UI 进行 3D 视图时,我遇到了一些布局问题。

所以这是一个视图,其中有一个垂直堆栈视图,其中包含一个堆栈视图列表。 前-

如上图所示,有 4 个内部堆栈视图,这是其中所有元素的约束。

UI 上的一切看起来都不错,但是当我查看上面的 3D 视图时,我遇到了布局问题。 虽然我可以理解为所有人提供恒定的 stackView 高度会解决它,但由于文本是动态的,我不能有一个恒定的高度。

【问题讨论】:

为什么要设置标签高度? 移除所有高度..你准备好了 嘿@jawadAli,即使在删除标签的单个高度后,它也会显示此布局问题。它表示主视图的高度不明确,即 Horizo​​ntalStackView 什么是填充模式? 对于所有堆栈视图,它都是“缩放填充” 【参考方案1】:

这是一个不会生成任何布局警告/歧义的布局:

堆栈视图的属性设置如下:

我在垂直“外部堆栈”中设计了一个“行堆栈”,然后将其复制了 3 次。

这是它在运行时的样子(标签有背景颜色,以便于查看它们的框架):

并将标签背景设置为清除:

【讨论】:

感谢您抽出宝贵时间提供这个详细的答案它解决了我的问题。

以上是关于如何解决嵌套堆栈视图的布局问题?的主要内容,如果未能解决你的问题,请参考以下文章

如何解决官方 iOS 应用开发教程中的 Auto Layout 问题?

Android -- 每日一问:你是如何解决 Android 的布局嵌套问题的?

如何解决 recyclerView Android 中的 addInArray 异常和 removeFromArray 异常?

如何使用 flexbox 获得这样的布局?

如何使用堆栈视图自动布局标签和按钮?

堆栈视图内的布局约束(以编程方式快速)