按钮相对于彼此定位

时间:2012-11-19 16:04:46

标签: iphone objective-c ios ios6 storyboard

我需要将两个按钮相互放置:

enter image description here

按钮的内容和宽度各不相同,所以我不能只在故事板中将它们放在一起。我可以在故事板中使用尾随空格或前导空格,并将关系设为另一个按钮而不是超级视图吗?

2 个答案:

答案 0 :(得分:1)

在IB中这很容易 - 只需选择两个按钮,然后在窗口右下角的约束按钮(看起来像H的那个)中添加“水平间距”选项。

答案 1 :(得分:0)

您只能在课堂上使用它,只需使用建议

in .h

UIButton *firstButton;
UIButton *secondButton; 

in .m

对于第一个按钮:

firstButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
firstButton.frame = CGRectMake(100, 100, 150, 60);//this can be changed at run time
[firstButton setTitle:@"TAP1" forState:UIControlStateNormal];
[firstButton addTarget:self action:@selector(someMethod1)
 forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:firstButton]; 

第二个按钮:

  secondButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
      secondButton.frame = CGRectMake(firstButton.frame.origin.x+10,    
       firstButton.frame.origin.y+10 , firstButton.frame.size.width,  
       firstButton.frame.size.height);

  [secondButton setTitle:@"TAP2" forState:UIControlStateNormal];
  [secondButton addTarget:self action:@selector(someMethod2)
  forControlEvents:UIControlEventTouchUpInside];
  [self.view addSubview:secondButton];

您可以根据上述10以外的需要设置自己的填充值; 每次你的firstButton宽度改变时,只需运行

      secondButton.frame = CGRectMake(firstButton.frame.origin.x+10,    
       firstButton.frame.origin.y+10 , firstButton.frame.size.width,  
       firstButton.frame.size.height);

两者都将对齐。我想这有帮助