iOS 9界面适配利器:详解Xcode 7的新特性UIStackView

本文介绍Apple在Xcode7中引入的StackView特性,一种用于简化iOS多尺寸屏幕适配的布局方式。StackView作为视图容器,自动布局其子视图,提供方向、间隔、对齐方式及分布比例等属性,有效解决复杂布局的适配问题。

前言

自适应、适配、布局这几个关键词一直伴随着iOS开发,从以前的单一尺寸屏幕,到现在的多尺寸屏幕,Apple一直致力于让开发人员尽可能少在这些事上耗费过多的精力,所以Apple在2012年推出了Auto Layout特性,2014年又推出了Adaptive Layout、Size Classes,2015年又推出了Stack View。这些无一不是我们开发者做适配的利器。今天就让我们看看StackView是怎么一回事。

注:示例开发环境为Xcode7 Beta 2

我们先来看看下面这个常见的布局:

这是一种很常见的汉堡布局,如果我们需要让它自适应不同尺寸的屏幕,我们要添加哪些约束呢?

看看图中这些约束,你们会不会感到莫名的烦躁呢,至少我是的。更让人抓狂的是,如果需要在中间再添加一个长方形,那么你要修改关联的好几个约束,有没有掀桌的冲动呢?

不过,我们开发人员总是幸运的,Apple在Xcode7中添加了一个新的特性StackView,它能完美的解决这个闹心的问题。

StackView其实一个视图容器,不过它会对它的子视图根据一定规则自动布局,将子视图按栈的排列方式进行布局,并且有几个主要的属性:

方向

StackView有水平和垂直两个方向的布局模式:

间隔

StackView可以设置子视图之间的间隔:

对齐方式

StackView可以设置子视图的对齐方式(水平方向和垂直方向的该属性值有所区别):

  • Fill:子视图填充StackView。
  • Leading:靠左对齐。
  • Trailing:靠右对齐。
  • Center:子视图以中线为基准对齐。
  • Top:靠顶部对齐。
  • Bottom:靠底部对齐。
  • First Baseline:按照第一个子视图中文字的第一行对齐。
  • Last Baseline:按照最后一个子视图中文字的最后一行对齐。

分布比例

StackView可以设置子视图的分布比例:

  • Fill:默认分布方式。
  • Fill Equally:子视图的高度或宽度保持一致。
  • Fill:Proportionally:StackView自己计算出它认为合适的分布方式。
  • Equal Spacing:子视图保持同等间隔的分布方式。
  • Equal Centering:每个子视图中心线之间保持一致的分布方式。

一切让示例来说话,在这篇文章中我们将逐步开发一个电影影评的应用来详细讲解如何使用StackView。

 赞一个  收 藏

转载于:https://www.cnblogs.com/BinZone/p/4871856.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值