两个扩展为全宽视图的 UIStackviews?

Posted

技术标签:

【中文标题】两个扩展为全宽视图的 UIStackviews?【英文标题】:Two UIStackviews that expand to full width of view? 【发布时间】:2018-05-29 09:18:06 【问题描述】:

我正在尝试创建一个类似于 的 UI

每个 ImageView 和 Team Label 都在一个 Vertical Stack View 中(由于有些团队没有徽标,我将隐藏 imageViews 并让 Team name 在 stackView 中居中)

但是,当我尝试向我的堆栈视图添加前导和尾随约束时(VS 标签应在父视图中居中),即使我已将父视图限制为其父视图...:

我还降低了我的堆栈视图的内容拥抱优先级,但他们仍然拥抱他们的内容。我只能通过对前导或尾随使用 >= 约束来实现我想要的 UI,如下所示:

但这不会让 stackviews 水平扩展至可用宽度(因此团队名称可以适合)

有人知道如何让我的堆栈视图可用吗?我的“VS”视图有一个固定的宽度约束。谢谢!

【问题讨论】:

【参考方案1】:

将深灰色视图创建为UIStackView。在堆栈里面放了三个UIView。将UIStackView 设为“fill : equally”,然后将UIViews 中的三个内的每个项目居中。 + 设置额外的约束。你完成了。如果你想在这里评论 UI 指南。

【讨论】:

谢谢!因此,如果我理解正确,您是在建议包含我的其他 3 个视图的堆栈视图? (两个堆栈视图和我的“VS”视图)当我这样做并约束顶部堆栈视图时,我仍然得到第二个屏幕截图的结果。有任何想法吗? P.S.:我需要 ImageView 和团队标签位于堆栈视图中,因为有时我需要隐藏 imageViews 并将标签居中 你设置 UIStackView 约束与基本单元格视图。 实际上这一定是 IB 中的视觉错误,当我在实际设备上构建时保留第二个屏幕截图的布局时,布局按预期工作。感谢您的所有帮助! @LucasP。真的。很高兴听到! :) PS:如果你做过。请关闭这个问题。【参考方案2】:

原来这是 Xcode 中的一个视觉错误(将视图压缩为其内容大小),当在实际设备上运行我的第二个屏幕截图布局时,布局按预期工作。

【讨论】:

以上是关于两个扩展为全宽视图的 UIStackviews?的主要内容,如果未能解决你的问题,请参考以下文章

css 仅限图像的弹出优惠券。添加此CSS代码将隐藏优惠券的其他元素,并将自定义内容扩展为全宽。

UITextView 使用自动布局动态扩展为滚动视图内的文本

转换列表项以扩展为 Google Inbox 等详细信息

为啥jvm在推入堆栈之前将字节和短扩展为int?

ac68ur8500 梅林固件扩展为一个小型 linux 系统

使用自定义 CSS 在 Wordpress.com 主题上将标题扩展到全宽 [关闭]