【问题标题】:How can I center items horizontally inside uistackview如何在 uistackview 中水平居中项目
【发布时间】:2018-08-16 02:11:38
【问题描述】:

我有一个 UIScrollView 和一个 UIStackView。我想从上到下添加元素,让滚动视图只垂直滚动。我有这个问题,并没有真正得到问题是什么。

所以我添加了UIScrollView应该在所有侧面都坚持超级视图的约束,添加了stackview,你可以在图片上看到它的约束,还添加了一个固定宽度的标签。我希望此标签位于滚动视图的中心,而滚动视图不会开始水平滚动。

我认为我缺少一些约束?滚动视图还说它具有“模糊的可滚动内容宽度”。

【问题讨论】:

    标签: ios xcode uiscrollview autolayout uistackview


    【解决方案1】:

    首先要解决歧义,您应该按照 Apple 的建议为 scrollView 创建一个 contentView,并为其提供最外层视图的宽度,然后将 stackView 放入其中并将 stackview 的对齐方式更改为 .center + 标签本身的对齐方式

           Scrollview  // pinned to top , leading , trailing ,bottom
              contentView // pinned to top , leading , trailing ,bottom , and have width = outmost view (very important)
                 stackView  
    

    【讨论】:

    • 这是什么意思“给它最外面的视图宽度”?我希望所有内容都拉伸当前屏幕宽度,除了 stackview 或标签。
    • 无论如何,scrollView 内的 contentView 必须具有静态宽度,或者在代码中为 self.view 的文档大纲中为其指定 outmostView(外部视图)的宽度
    • 谢谢,我想我明白了
    猜你喜欢
    • 2018-01-06
    • 2019-02-20
    • 2016-06-25
    • 2020-06-20
    • 2021-03-20
    • 1970-01-01
    • 2022-01-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多