使用 VFL 在 iOS 中实现自动布局
Auto Layout implementation in iOS using VFL
我正在使用可视格式语言的自动布局。
在水平模式下,我可以像这样在一行代码中包含两个标签
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 在单行中执行此操作吗?
没有。有很多不同的方法可以实现自动布局:在 Interface Builder 中,使用 VFL,以编程方式创建 NSLayoutConstraints,或使用 Layout Anchors。每个人都有自己的缺点。这是VFL出故障的地方之一。
我正在使用可视格式语言的自动布局。
在水平模式下,我可以像这样在一行代码中包含两个标签
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 在单行中执行此操作吗?
没有。有很多不同的方法可以实现自动布局:在 Interface Builder 中,使用 VFL,以编程方式创建 NSLayoutConstraints,或使用 Layout Anchors。每个人都有自己的缺点。这是VFL出故障的地方之一。