2016-08-01 72 views
0

我有兩個按鈕。我想要同一行上的兩個按鈕水平放置,並且我希望左側按鈕左側,兩個按鈕之間以及右側按鈕右側具有相同的空間。如何居中兩個標籤

我想中心這樣的兩個按鈕:

enter image description here

+0

可能是這個幫助你... http://stackoverflow.com/questions/32862142/how-to-add-equal-spacing-and-equal-width-for-button-in-ios-auto-佈局/ 32862693#32862693或者您可以使用堆棧視圖 –

回答

1

如果我是你,我會讓他們編程。如果它們包含在視圖中,這將起作用。下面的代碼假設你想將按鈕置於你的viewController中。

使UIButtons編程

在viewDidLoad中:

 let myFirstXCoordinate = CGFloat((self.view.width/4) - (myWidth/2)) 
     let mySecondXCoordinate = CGFloat((3 * self.view.width)/4) - (myWidth/2)) 
     let myWidth:CGFloat = //your button's width 
     let myHeight:CGFloat = //your button's height 
     let myYCoordinate:CGFloat = //your Y Coordinate 

     firstButton.setBackgroundImage(UIImage(named: "myRedOvalThingyImage"), forState: .Normal) 
     firstButton.backgroundColor = UIColor.clearColor() 
     firstButton.frame = CGRectMake(myFirstXCoordinate, myYCoordinate, myWidth, myHeight) 
     firstButton.addTarget(self, action: #selector(ViewController.pressedFirst(_:)), forControlEvents: .TouchUpInside) 
     buttonView.addSubview(firstButton) 

     secondButton.setBackgroundImage(UIImage(named: "myRedOvalThingyImage"), forState: .Normal) 
     secondButton.backgroundColor = UIColor.clearColor() 
     secondButton.frame = CGRectMake(mySecondXCoordinate, myYCoordinate, myWidth, myHeight) 
     secondButton.addTarget(self, action: #selector(ViewController.pressedSecond(_:)), forControlEvents: .TouchUpInside) 
     buttonView.addSubview(secondButton) 

外viewDidLoad中:

func pressedFirst(sender: UIButton!) { 
print("First Oval Thingy Was Pressed") 
} 

func pressedSecond(sender: UIButton!) { 
print("Second Oval Thingy Was Pressed") 
} 
0

當您使用約束時,您必須工作。

在這種情況下,您應該有2個塊,它們的大小與從0到居中的中心寬度相同。

例子:

Parent Width: 320 

let widthBlock = 320/2 

block 1: x = 0, width = widthBlock 
block 2: x = widthBlock, width = widthBlock 

然後在每個區塊內創建您的按鈕,你中心垂直和水平方向上使用約束雙方。

由於您對界面做的事情要簡單得多,只需將鼠標從按鈕上拖拽,然後給他的父親Center Horizontal in ContainerCenter vertically in container

0

您可以通過向左,中,右添加三個空間視圖(UIvews)來實現自動佈局。

  • 添加約束條件來設置所有空間視圖等寬,並修復高度 (例如:30)。
  • 添加約束介乎spaceview和按鈕配空間爲0,並且 spaceview與晚飯視圖爲0
  • 添加約束centerY所有空間視圖和按鈕。
  • 將約束添加到頂級超級視圖。

當完成視圖樣子

enter image description here

0

一個這個問題最簡單的方法是使用間隔意見。

enter image description here

兩個紅色按鈕將具有固定的寬度和三個淺灰色間隔視圖也將具有相等的寬度。現在將所有5個組件與相鄰組件連接起來。

這裏我採取了容器視圖。如果你不需要它,你可以忽略它。

這裏是在不同的屏幕輸出:這裏不包括由於空間限制的5.5屏幕,但你可以在5.5屏幕中查看過,它會工作:

enter image description here

注意。