美文网首页iOS精选ios开发专题
UIStackView的distribution属性属性笔记

UIStackView的distribution属性属性笔记

作者: dadage456 | 来源:发表于2020-05-15 10:54 被阅读0次

    做iOS开发8年了吧,对于一些技术还是有点模糊。也没有学笔记的习惯,有些问题虽然解决了,但是头脑中没有一个清晰的思路。以至于后来遇到同样的问题,还是需要摸索摸索。

    这里主要记录一下:

    • UIStackView的属性的理解

    • UIStackView在 确定了大小约束没有确定大小约束 两种情况下,子视图的布局的不同。

    一、UIStackView的基本属性

    首先了解一下主轴、纵轴的概念:

    主轴: UIStackView的布局方向【布局方向是水平,主轴就是水平】

    纵轴:UIStackView的布局的另一个方向 【布局方向是水平,主轴是垂直】

    UIStackView主要依靠axisdistributionalignmentspacing属性进行子视图的布局。

    官网给的图
    • axis: 子视图的布局方向,水平和垂直
    • distribution: 子视图的主轴的布局方式
    • alignment:子视图的纵轴的对齐方式
    • spacing:子视图之间的间距

    二、distribution属性

    对于Fill类型的布局

    • StackView大小不确定:通过指定子元素大小,确定StackView的大小
    • StackView大小确定:子元素填充StackView的空间
    • UIStackViewDistributionFill

      子元素填满主轴方向StackView空间。

      • StackView大小约束确定:设置其他子元素的高度,留下一个子元素的高度自适应填充StackView空间


        StackView大小约束确定
        • StackView大小约束不确定: 所有的子元素指定高度


          StackView大小约束不确定
    • UIStackViewDistributionFillEqually

      自动调整子元素在主轴方向的大小,使他们大小一致,填满整个StackView空间。

      • StackView的大小约束确定:子元素自动调整高度。


        StackView大小约束确定
      • StackView的大小约束不确定:指定一个子元素的高度,其他的子元素自动调整相同高度


        StackView的大小约束不确定
    • UIStackViewDistributionFillProportionally

      子元素根据自身Frame中的主轴大小,确定占用StackView空间的百分比。

      StackView大小约束确定:子元素会等比例适配

      StackView大小不确定:StackView的大小会根据子元素在主轴上大小,自定适配。

      StackView的大小约束不确定
    • UIStackViewDistributionEqualSpacingStackView的大小约束确定的情况下使用

      UIStackViewDistributionEqualSpacing
    • UIStackViewDistributionEqualCenteringStackView的大小约束确定的情况下使用

      UIStackViewDistributionEqualCentering

    相关文章

      网友评论

        本文标题:UIStackView的distribution属性属性笔记

        本文链接:https://www.haomeiwen.com/subject/wloqohtx.html