要始终牢记一点:所有的约束都是NSLayoutConstraint类的成员,无论你是以何种形式创建他们的。
下列代码片段演示了使用可视化格式(VFL)创建约束。
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:[view1]-8-[view2]" options:NSLayoutFormatAlignAllLeading metrics:nil views:NSDictionaryOfVariableBindings(view1, view2)]];
或:
NSString *hvfl = @"H:|-20-[redView]-20-|";
NSDictionary *views = @{@"redView" : redView};//NSDictionary *views = NSDictionaryOfVariableBindings(redView);
NSDictionary *metrics = @{@"space" : @20};
NSArray *hlcs = [NSLayoutConstraint constraintsWithVisualFormat:hvfl options:kNilOptions metrics:metrics views:views];
[self.view addConstraints:hlcs];
Format:VFL语句。
options:对齐方式。通过给选项参数赋0值来忽略选项。
metrics:VFL语句中用到的变量