- 实现步骤:
- 确保UILabel的translatesAutoresizingMaskIntoConstraints属性为NO,这样Auto Layout才能生效。
- 获取UILabel的父视图。
- 创建水平居中的NSLayoutConstraint约束对象,将UILabel的centerX属性与父视图的centerX属性关联。
- 将约束添加到父视图上。
- 核心代码片段:
UILabel *label = [[UILabel alloc] init];
// 设置UILabel属性等
label.translatesAutoresizingMaskIntoConstraints = NO;
// 获取父视图
UIView *superview = label.superview;
// 创建水平居中约束
NSLayoutConstraint *centerXConstraint = [NSLayoutConstraint constraintWithItem:label
attribute:NSLayoutAttributeCenterX
relatedBy:NSLayoutRelationEqual
toItem:superview
attribute:NSLayoutAttributeCenterX
multiplier:1.0
constant:0.0];
// 添加约束到父视图
[superview addConstraint:centerXConstraint];