您的位置:首页 > 其它

Autolayout自动布局2

2016-01-27 20:39 295 查看
需求:控件水平居中,垂直居中,宽度高度均为父控件的一半





// 1.创建控件
UIView *blueView = [[UIView alloc] init];
[self.view addSubview:blueView];
blueView.backgroundColor = [UIColor blueColor];
//不要将AutoresizingMask转为Autolayout的约束
blueView.translatesAutoresizingMaskIntoConstraints = NO;

// 2.添加约束
//宽度约束:父控件的一半
NSLayoutConstraint *widthConstraint = [NSLayoutConstraint constraintWithItem:blueView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:blueView.superview attribute:NSLayoutAttributeWidth multiplier:0.5 constant:0];
[blueView.superview addConstraint:widthConstraint];

//高度约束:父控件的一半
NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:blueView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:blueView.superview attribute:NSLayoutAttributeHeight multiplier:0.5 constant:0];
[blueView.superview addConstraint:heightConstraint];

//水平居中
NSLayoutConstraint *centerXConstraint = [NSLayoutConstraint constraintWithItem:blueView attribute:NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:blueView.superview attribute:NSLayoutAttributeCenterX multiplier:1.0 constant:0];
[blueView.superview addConstraint:centerXConstraint];

//垂直居中
NSLayoutConstraint *centerYConstraint = [NSLayoutConstraint constraintWithItem:blueView attribute:NSLayoutAttributeCenterY relatedBy:NSLayoutRelationEqual toItem:blueView.superview attribute:NSLayoutAttributeCenterY multiplier:1.0 constant:0];
[blueView.superview addConstraint:centerYConstraint];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: