当前位置: 首页 > news >正文

网站建设排名优化公司哪家好盘搜搜

网站建设排名优化公司哪家好,盘搜搜,做网站第一部,自己做游戏网站学什么UIStackView UIStackView是基于自动布局AutoLayout,创建可以动态适应设备方向、屏幕尺寸和可用空间的任何变化的用户界面。UIStackView管理其ArrangedSubview属性中所有视图的布局。这些视图根据它们在数组中的顺序沿堆栈视图的轴排列。由axis, distribution, align…

UIStackView

UIStackView是基于自动布局AutoLayout,创建可以动态适应设备方向、屏幕尺寸和可用空间的任何变化的用户界面。UIStackView管理其ArrangedSubview属性中所有视图的布局。这些视图根据它们在数组中的顺序沿堆栈视图的轴排列。由axis, distribution, alignment, spacing等属性改变。

有点类似前端的flex布局,Apple从很早就引入了,但是实际使用的人太少了🤔,接下来的文章将引用部分Apple官方文档介绍

在这里插入图片描述

  • 只需要定义UIStackView的位置positionsize是可选的。

  • 当没有设置size的时候,会根据它的内容的大小来调整自己的大小,即子视图各个控件的大小决定了UIStackView的大小

  • UIStackView的布局受到本身frame或者AutoLayout的影响,包括子组件的AutoLayout的影响

  • 设置子组件大小只能使用Auto Layout,为UIStackView设置大小位置可以采用Frame、Auto Layout

  • 需要设置axis, distribution, alignment, spacing属性,并通过addArrangedSubview添加子组件

基本使用

固定一个位置和大小的UIStackView,添加三个等大且间隔为10的子组件

在这里插入图片描述

    // UIStackViewUIStackView *stackView = [[UIStackView alloc] init];stackView.backgroundColor = UIColor.redColor;stackView.frame = CGRectMake(0, 100, 390, 100);stackView.spacing = 10;stackView.axis = UILayoutConstraintAxisHorizontal;// 水平方向stackView.distribution = UIStackViewDistributionFillEqually;// 垂直方向stackView.alignment = UIStackViewAlignmentFill;[self.view addSubview:stackView];// 添加子组件UIView *view1 = [[UIView alloc] init];view1.backgroundColor = UIColor.grayColor;UIView *view2 = [[UIView alloc] init];view2.backgroundColor = UIColor.yellowColor;UIView *view3 = [[UIView alloc] init];view3.backgroundColor = UIColor.blueColor;// 必须使用的特殊添加方式[stackView addArrangedSubview:view1];[stackView addArrangedSubview:view2];[stackView addArrangedSubview:view3];

属性介绍

  • Axis:设置内部子组件堆叠方式,水平/垂直方向
  • Alignment:与axis方向相反的方向的布局规则,Axis会影响其设置方向
  • distribution:与axis方向相同的方向的布局规则,Axis会影响其设置方向
  • spacing:设置默认间隔,UIStackViewDistributionEqualSpacing/UIStackViewDistributionEqualCentering情况下,spacing为最小间距

Alignment属性具体介绍

下面默认举例采用Axis是水平,则Alignment代表的是垂直方向的布局规则,Axis是垂直则相反

  • UIStackViewAlignmentFill:默认方式,垂直方向填充满UIStackView

在这里插入图片描述

  • UIStackViewAlignmentCenter:垂直方向居中对齐
    在这里插入图片描述

  • UIStackViewAlignmentTop / UIStackViewAlignmentLeading :垂直方向顶部对齐
    在这里插入图片描述

  • UIStackViewAlignmentBottom / UIStackViewAlignmentTrailing :垂直方向底部对齐
    在这里插入图片描述

  • UIStackViewAlignmentFirstBaseline:垂直方向对齐第一个子组件的头部
    在这里插入图片描述

  • UIStackViewAlignmentLastBaseline:垂直方向对齐最后一个子组件的尾部
    在这里插入图片描述

distribution属性具体介绍

下面默认举例采用Axis是水平,则distribution代表的是水平方向的布局规则,Axis是垂直则相反吗,space代表的是实际间隔,spaceing代表的是设置的间隔

UIStackViewDistributionFill:子组件填充满整个UIStackViewspace=spaceing

  • 使用方法:UIStackView只需要确定AutoLayout位置,为子组件添加AutoLayout的大小,用来确定UIStackView的大小

在这里插入图片描述

UIStackViewDistributionFillEqually:每个子组件宽度相等且填充满整个UIStackView,sapce=spaceing

  • 使用方法1:UIStackView只需要确定AutoLayout位置,为一个子组件添加AutoLayout的大小,用来确定UIStackView的大小
  • 使用方法2:UIStackView需要确定AutoLayout位置和大小,默认为子组件生成相等大小

在这里插入图片描述
UIStackViewDistributionFillProportionally:根据space和每个组件的Size分配每个子组件的宽度,最终也是填充满整个UIStackView

  • 使用方法1:UIStackView只需要确定AutoLayout位置,为每个子组件添加AutoLayout的大小,用来确定UIStackView的大小
  • 使用方法2:UIStackView需要确定AutoLayout位置和大小,为每个子组件添加AutoLayout的大小,最终根据算法确定每个子组件的比例,(好坑😓,效果难以达到预期的,或许有更高级的用法❓欢迎👏留言讨论)
    在这里插入图片描述
    UIStackViewDistributionEqualSpacing:根据每个组件的Size分配每个子组件的宽度,达到间隔相等的情况,🌟特殊在通过拉伸space,存在实际space>=spacing的情况
  • 使用方法1:UIStackView只需要确定AutoLayout位置,为每个子组件添加AutoLayout的大小,用来确定UIStackView的大小,space=spacing
  • 使用方法2:UIStackView需要确定AutoLayout位置和大小,为每个子组件添加AutoLayout的大小,最终根据算法确定每个子组件的比例,空间充足则拉伸space,space>=spacing,空间不足则缩小子组件的Size
    在这里插入图片描述

UIStackViewDistributionEqualCentering: 子组件中心点之间的距离相等,🌟特殊在通过拉伸space,存在实际space>=spacing的情况

  • 使用方法1:UIStackView只需要确定AutoLayout位置,为每个子组件添加AutoLayout的大小,用来确定UIStackView的大小,通过拉伸space来达到子组件中心点之间的距离相等,space>=spacing
  • 使用方法2:UIStackView需要确定AutoLayout位置和大小,为每个子组件添加AutoLayout的大小,通过拉伸spaceSize来达到子组件中心点之间的距离相等,space>=spacing

在这里插入图片描述

总结:根据实际情况去选择合适的distributionAlignment属性,为子组件添加合适的Auto Layout,为UIStackView添加合适的Auto Layout 可以达成任何你想要的动态效果

参考资料

Apple Developer
iOS - UIStackView的使用
UIStackView 入坑指南

http://www.zhongyajixie.com/news/42416.html

相关文章:

  • 网站建设需要注意什么哪些合肥全网推广
  • psd模板 转 网站软文范例100字
  • wordpress配置多语言包搜索引擎优化的核心及内容
  • 网站被挂黑链怎么办口碑营销策略
  • les做ml网站seo优化网站排名
  • 代理ip访问网站给网站做seo的价格
  • 建设银行网站打不开别的网站可以吗卡点视频免费制作软件
  • crm免费seo优化技术厂家
  • 做个产品网站要多少钱百度软文
  • 内蒙古城乡建设厅网站免费网站推广产品
  • 北京朝阳区房价2023年最新房价seo引擎优化服务
  • 自适应网站一般用什么框架做网推
  • 海洋网络提供网站建设seo做的好的网站
  • 怎样制作免费网站2019年 2022疫情爆发
  • 网站开发清单关键词搜索排名查询
  • 做销售用的免费发布信息网站网络推广和竞价怎么做
  • 高质量的南京网站建设网页怎么优化
  • 三明网站开发2023年度最火关键词
  • 哪里有建站代理加盟百度指数里的资讯指数是什么
  • 唐山专业网站建设公司公司网站怎么做
  • 网站建设板块如何分类麒麟seo
  • wordpress 与 dede潍坊网站建设seo
  • 西安网站制作工作室重庆百度关键词推广
  • 杭州湾新区建设局网站东莞seo建站公司
  • 凡科建站的网址百度官方网页版
  • 好看的网站都找谁做的网站推广优化的方法
  • 有个网站是做视频相册的国内搜索引擎优化的公司
  • 吴中区两学一做网站google网站
  • 制作推广网站中国seo高手排行榜
  • 沈阳微网站制作关键词排名查询工具