2015-08-07 16 views

risposta

-1

Vedere se funziona. Crea i vincoli verticali sul titolo title di UIButton anziché sul pulsante stesso.

+0

Non ha funzionato per me. – SeanR

1

Se si desidera che il pulsante riduca al suo titolo il contenuto di Label, ho trovato che l'unico modo per farlo è sottoclasse UIButton e sovrascrive intrinsicContentSize. Spero che questo funzioni per te!

ha funzionato per me su iOS 9,3

class CustomButton: UIButton { 

    override func intrinsicContentSize() -> CGSize { 
     return titleLabel?.intrinsicContentSize() ?? super.intrinsicContentSize() 
    } 
} 
12

Dopo alcuni esperimenti, sembra che se si cerca di impostare contentEdgeInsets a tutti zeri, vengono utilizzati i inserti predefiniti. Tuttavia, se si imposta su quasi a zero, funziona:

button.contentEdgeInsets = UIEdgeInsets(top: 0, left: 0.01, bottom: 0.01, right: 0) 

Sembra anche che i valori diventano floor 'd, in modo da non effettivamente ottenere imbottitura frazionata.

+0

ha funzionato per me. Grazie! – chrilith

+0

La cosa strana è che si trasforma in '0' in' Interface Builder', pensato che sia impostato correttamente a '0.01' nel file' .xib'/'.storyboard'. –