IOS中AutoLayout是自动布局,利用Autolayout来做屏幕适配,很方便,直接上代码:
- (void)viewDidLoad {
[super viewDidLoad];
//创建一个新的UIView
UIView *newview = [[UIView alloc]init];
newview.backgroundColor = [UIColor grayColor];
//要使用Autolayout必须先把view添加到父view中去,否则编译时候会警告
[self.view addSubview:newview];
要使用Autolayout必须先把该view的translatesAutoresizingMaskIntoConstraints属性这只为NO
newview.translatesAutoresizingMaskIntoConstraints = NO;
NSLayoutConstraint *contraint = nil;
//距离首部20,等价于左侧
contraint = [NSLayoutConstraint constraintWithItem:newview attribute:NSLayoutAttributeLeading relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeLeading multiplier:1.0 constant:20];
//添加左侧约束
[self.view addConstraint:contraint];
//距离尾部-20,等价与右侧
contraint = [NSLayoutConstraint constraintWithItem:newview attribute:NSLayoutAttributeTrailing relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeTrailing multiplier:1.0f constant:-20];
//添加右侧约束
[self.view addConstraint:contraint];
//距离上侧50
contraint = [NSLayoutConstraint constraintWithItem:newview attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeTop multiplier:1.0f constant:50];
//添加上侧约束
[self.view addConstraint:contraint];
//距离下侧-20
contraint = [NSLayoutConstraint constraintWithItem:newview attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeBottom multiplier:1.0f constant:-20];
//添加下侧约束
[self.view addConstraint:contraint];
}