iOS AutoLayout阅读笔记2------>子视图固定比例分割父视图的简单实现

原创 2016年05月31日 12:37:19

这个操蛋的东西,早期在面试的时候有被问到过,当时好像没答出来,现在一看,你妹啊,那么简单大笑

来来来,直接上图

1.首先新建一个工程,然后拉入一个UIView,第一步,做约束啊少年,这个应该问题不大,如下


2.第二步先把咱们这个容器View需要的东西关联下


注:约束也是对象,和控件一样,按住CTRL,直接拽出来就好了



3.假如有需求要求里面有三个控件,分别按2:3:5分割父视图的高度,而且无论容器View(父视图)怎么变,内部都是以2:3:5的比例分割

先添加一个进去 由于操作都是类似,只演示一个

先定三边,按箭头所示选择三边的约束



然后对高度进行约束,还是按住CTRL,拖到其父视图位子,就会出现如下的灰色浮窗,由于咱们现在是对高度进行约束所以选择Equal heights,先这么选,等下再改



选完之后就会出现如下的视图,然后我们点击那个约束,右侧就会弹出对应约束的各种属性,我们根据需求2:3:5的需求,自行修改Mutiplier的值,默认是1(Equal),我们改为需要的0.2


改完之后线还是黄色的啊,也就是需要更新下位子(如果出现红色的线,那么就是约束不完整或者冲突了)

我习惯快捷键command + ALT + =  或者     选择右下角这个按钮,点击Updates Frames即可变成如下成功的约束(蓝色的)



把剩下的两个也添加完,效果如下




4.约束加完了,我们现在开始加一丢丢代码,就可以做到了

<span style="font-size:14px;">- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
{
    CGFloat length = arc4random() % 200;
    [UIView animateWithDuration:0.8 animations:^{
       
        self.bottomContraint.constant = length;
        self.rightContraint.constant = length;
        [self.animationView layoutIfNeeded];
    }];
}</span>

OK,做完了,现在点击屏幕触发这个方法,我们的父视图会各种变大变小,但是内部永远是按着2:3:5的比例进行分割的


效果如下



安静安静安静 Over~~~



版权声明:本文为博主原创文章,未经博主允许不得转载。转载请Email我.......

相关文章推荐

iOS AutoLayout 百分比布局

本文记录如何在 UIStoryboard 或者 xib 中进行百分比布局,包括 * View.Width 占其 Superview.Width 的百分比 * View.Leading 与 Super...

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

为了适应苹果的不同的屏幕,因此需要做屏幕的等比例适配!下面是简单的等比例适配的教程: 下面是一个简单的让lable在cell中居中显示的案例 1、创建自定义的cell的XIB文件,在此就不多说了。 2...

iOS故事版/Xib下 autolayout基于父视图的应用

开发应用端APP,autolayout是个好东西。。 使用autolayout无非两种方式,1、纯代码;2、故事版/Xib 纯代码的情况下,Masonry又是个好东西。 提问,如图所示,如何添加...

《MYSQL入门很简单》学习笔记2——表,索引,视图,触发器

我的个人网站戳这里 第6章 表 6.1创建表 1.创建表的语法形式 CREATE TABLE 表名(属性名 数据类型 [完整性约束条件],        ...

IOS6 学习笔记(2)——视图的生命周期

1、生命周期中的主要方法 视图就是Controller类,每个视图通常会有一个xib文件,老版本的SDK中是nib文件,是视图的UI布局界面,视图的生命周期一样需要分成几个阶段,每个阶段都会回调相关...

iOS】利用PureLayout实现:比例自动布局(AutoLayout)

早在前两年还没有iPhone6(s)、iPhone6(s) plus出现的时候,在开发iOS的应用程序的时候感觉在布局上都完爆Android,因为虽然iPhone5与iPhone4的高度不一样,但是参...

IOS 创建简单表视图

  • 2015-07-13 21:46
  • 169KB
  • 下载

iOS 9 适用,使用Button实现简单的视图跳转与返回上一级。(初级)

搭建平台;Xcode 7.1— iOS 9一、新建两个视图,并通过 Button实现跳转 并在第一个视图上放一个Button控件。鼠标点击Button控件,按住Ctrntrol键不放,出现蓝色小圆点...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)