加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift开发:NSLayoutConstraint纯代码实现自动布局-初级篇

发布时间:2020-12-14 07:02:06 所属栏目:百科 来源:网络整理
导读:要求 宽高 200的view,通过代码,使得view 在距离父控件的右下角 20 边距处 /* 约束的设置 , 控件内部约束由自己添加,比如宽高,如果是与其他的 控件约束那么有父控件添加 *创建约束 NSLayoutConstraint 参数 说明: * item 自己 * attribute * relatedBy

要求宽高200的view,通过代码,使得view在距离父控件的右下角20边距处

/*约束的设置,控件内部约束由自己添加,比如宽高,如果是与其他的

控件约束那么有父控件添加

*创建约束NSLayoutConstraint参数说明:

* item自己

* attribute

* relatedBy大于等于小于等于等于

* toItem另外一个控件

* attribute另一个控件的熟悉

* multiplier乘以多少

* constant :加上多少

* NSLayoutConstraint :某个控件的属性值等于另外一个控件的属性值

乘以多少加上多少

*添加约束addConstraint

*/



swift 代码:


let blueView =UIView();

blueView.backgroundColor =UIColor.blueColor()

self.view.addSubview(blueView)//系统默认会给autoresizing 约束

// 关闭autoresizing不关闭否则程序崩溃

blueView.translatesAutoresizingMaskIntoConstraints =false



//宽度约束

let width:NSLayoutConstraint =NSLayoutConstraint(item: blueView,attribute: NSLayoutAttribute.Width,relatedBy:NSLayoutRelation.Equal,toItem:nil,attribute: NSLayoutAttribute.NotAnAttribute,multiplier:0.0,constant:200)

blueView.addConstraint(width)//自己添加约束

//高度约束

let height:NSLayoutConstraint =NSLayoutConstraint(item: blueView,attribute: NSLayoutAttribute.Height,constant:200)

blueView.addConstraint(height)//自己添加约束


//右边约束

let right:NSLayoutConstraint =NSLayoutConstraint(item: blueView,attribute: NSLayoutAttribute.Right,toItem:self.view,attribute:NSLayoutAttribute.Right,multiplier:1.0,constant: -20)

blueView.superview!.addConstraint(right)//父控件添加约束


//下边约束

let bottom:NSLayoutConstraint =NSLayoutConstraint(item: blueView,attribute: NSLayoutAttribute.Bottom,attribute:NSLayoutAttribute.Bottom,constant: -20)

blueView.superview!.addConstraint(bottom)//父控件添加约束


效果图:


(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读