使用VFL在iOS中实现自动布局

时间:2016-10-04 14:45:47

标签: ios objective-c xcode autolayout ios-autolayout

我使用可视化格式语言使用自动布局。

在水平模式下,我可以将这两个标签包含在一行代码中,如

 constraints  = [NSLayoutConstraint constraintsWithVisualFormat:@"H:|-20-[Btn1]-10-[dummyLabel1]-10-[Lbl2]-10-[dummyLabel2]-10-[Btn2]" options:0 metrics:metrics views:views];
[self.view addConstraints:constraints];

我不得不使用两行这样的约束来将两个对象放在垂直模式中。

 constraints = [NSLayoutConstraint constraintsWithVisualFormat:@"V:[dummyLabel]-16-[fixedLabel]-13-|" options:0 metrics:metrics views:views];
[self.view addConstraints:constraints];

constraints = [NSLayoutConstraint constraintsWithVisualFormat:@"V:[dummyLabel2]-16-[fixedLabel]-13-|" options:0 metrics:metrics views:views];
[self.view addConstraints:constraints];

有什么方法可以在垂直模式的单行中使用VFL进行此操作吗?

1 个答案:

答案 0 :(得分:2)

没有。有很多不同的方法可以进行自动布局:在Interface Builder中,使用VFL,以编程方式创建NSLayoutConstraints,或使用布局锚点。每个都有自己的缺点。这是VFL崩溃的地方之一。