需求:控件水平居中,垂直居中,宽度高度均为父控件的一半
// 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];
本文介绍如何使用Auto Layout在iOS应用中使一个UIView控件实现水平居中、垂直居中,并将其宽度和高度设置为父视图的一半。通过具体的代码示例展示了如何创建约束。
1490

被折叠的 条评论
为什么被折叠?



