(iOS开发)AutoLayOut中等比例设置视图

来源:互联网 发布:ip与mac绑定有什么用 编辑:程序博客网 时间:2024/06/04 18:06

为了适应苹果的不同的屏幕,因此需要做屏幕的等比例适配!下面是简单的等比例适配的教程:

下面是一个简单的让lable在cell中居中显示的案例

1、创建自定义的cell的XIB文件,在此就不多说了。

2、在xib上面放一个label:

3、给TestLable添加个相对于父视图(cell的contentView)的Leading Space的约束

4、点击如图显示的约束线条,就会出现以下的页面:(First Item可以选择当前视图TestLable,Second Item 可选父视图)





5、选择Second Item,然后依次校准,如下图所示:




因为是要居中,所以CenterX的Multiplier (比例)应该选择0.5,算法是这样的:此时0.5是相对与一半视图的0.5,相对于整体的父视图的0.25


6、选中TestLable,约束以下右侧的距离,生成Trailing Space ,再次选中生成的约束,出现如下图:



7、此时会发现First Item 和Second Item调过来了,此时仍需将First Item改为TestLable ,Second Item改为父视图,修改方式如下:

点击First Item 出现弹缩框,选择 Reverse First And Second Item   就会发现调过来了




8、修改Constant和Multiplier的大小,如下图(注意上面 First Item 和Second Item)的区别



注:

在此特殊说明一下,因为我选的Trailing Space没有相对于父视图的CenterX来计算,是选择父视图的Trailing来计算的,想让图片居中,左侧已经占了0.75*宽度 的大小


9、同理: 顶部Top Space也是如此:再次直接贴图了,唯一不同的是CenterX 变成CenterY



10、底部 Bottom Space 也是和右侧的Trailing Space一样 




PS:如果要实现2张图等比例,就是有关于计算的问题,容易混淆的地方是相对于CenterX的计算,记住0.5是相对于Center(一半视图view)的,相对于整个视图其实是0.25,一半的一半。



下面是我写的demo:传送门













0 0
原创粉丝点击