2016-04-07 13 views
19

Sto riscontrando un problema nell'allineamento a sinistra del testo di UIButton. Ho anche provato a cambiarlo in .Right ma rimane comunque centrato. Ho anche provato aButton.imageEdgeInsets = UIEdgeInsets(top: 0, left: 20, bottom: 0, right: 0) invece di aButton.titleLabel?.textAlignment = .Left ma questo non cambia nulla. C'è un modo alternativo per modificare a livello di programmazione l'allineamento di un titolo UIButton?Problemi di allineamento a sinistra Titolo UIButton (iOS/Swift)

 allButtonViews = UIView(frame: CGRectMake(0, 44, 100, 100)) 
     allButtonViews.backgroundColor = .redColor() 

     let campusButton = UIButton(type: UIButtonType.System) as UIButton 
     aButton.frame = CGRectMake(0, 0, 300, 70) 
     aButton.setTitle("A", forState: .Normal) 
     aButton.titleLabel?.textColor = .blueColor() 
     aButton.titleLabel?.textAlignment = .Left 
     aButton.backgroundColor = .whiteColor() 

     sortView.addSubview(aButton) 
     view.addSubview(allButtonViews) 

enter image description here

risposta

58

Prova questo:

 button.contentHorizontalAlignment = .Left 
+0

Esiste qualche impostazione in Xcode che abiliterebbe la stessa funzionalità? – bibscy

+0

Aggiungere un attributo di runtime definito dall'utente con contentHorizontalAlignment come un NSNumber con valore 0-3 per center, left, right e fill. – RiverbayChris

+1

.Left è stato rinominato => .left. –

8

aggiornate per Swift 3 o Swift 4

yourButton.contentHorizontalAlignment = .left 
4

Per Swift 4;

locationButton.contentHorizontalAlignment = .left 
Problemi correlati