我只是在玩constraintsWithVisualFormat,但无法弄清楚该怎么做。

我将两个视图与水平10像素边距放在一起。两个视图的Y和Y位置都相同。

我尝试了以下方法。

 [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-10-[view1(==100)]-10-[view2(==100)]" options:0 metrics:nil views:views]];

[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-10-[view1(==100)]-[view2(==100)]" options:0 metrics:nil views:views]];



  水平约束:超级视图左边距10像素-100宽度
  view1- 10 pix margin-view2的100宽度
  
  垂直约束:超级视图顶部10像素-视图1的高度100
  100的视线高度2


问题
   第二个视图Y位置在view1之后开始,我希望两个视图都具有相同的Y位置。

请尽可能解释答案

最佳答案

在VisualFormatLanguage中,标记“-”为8px的空白。

尝试这个。

`[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-10-[view1(==100)]-10-[view2(==100)]" options:0 metrics:nil views:views]];
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-10-[view1(==100)]" options:0 metrics:nil views:views]];
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-10-[view2(==100)]" options:0 metrics:nil views:views]];`

关于ios - ConstraintsWithVisualFormat为所有 View 设置相同的Y位置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26135199/

10-13 00:58