2016-11-07 63 views
8

我正在使用Xcode 8.我試圖在左側添加UIButton,並在Title右側添加Image。我想保留UIButtonImageTitle之間的距離Storyboard。我在這裏看不到Edge選項。任何幫助在這裏非常感謝。Xcode 8中沒有UIButton Edge選項

回答

7

的Xcode 8故事板:

首先設置標題和圖像按鈕,並轉到尺寸檢查,並設置標題插圖和形象的插圖,這將調整內容所需的位置。在你的情況下設置標題插入左側和圖像插入權。

enter image description here

編程方式:

button.titleEdgeInsets = UIEdgeInsetsMake(top, left, bottom, right); 
button.imageEdgeInsets = UIEdgeInsetsMake(top, left, bottom, right); 

輸出:

enter image description here

的Xcode 7故事板:

enter image description here enter image description here

的Xcode 7邊緣選項已經從屬性檢查器移動到尺寸檢查節在Xcode 8,並命名爲內容的插圖,插圖標題和圖像插圖。

+0

我不知道在Xcode 8這種變化。如果我想在標題左側的按鈕右側添加圖像,該怎麼做?根據你之前的回答,似乎我必須將圖像「正確」選項的值硬編碼爲300/500像素。但我記得早些時候我們可以選擇圖像並將其對齊方式設置爲按鈕的右側。現在我在這裏看不到。任何幫助?這種硬編碼值不適用於兩個方向。 –

+0

在Xcode8中,您所要求的內容與上面相同。在Xcode7中,您可以通過選擇標題或圖像來設置邊緣的左/右。從Xcode8,同樣已被重命名並移動到大小檢查器部分即。標題插入和圖像插入。如果你願意,你可以使用硬編碼,或者你可以通過使用按鈕大小動態地添加間距到按鈕。 – Jeyamahesan

+0

這個選項沒有幫助我,我會找到我的解決方案,謝謝 –

20

使用故事板

環境:XCode的8

Xcode8

注:在Xcode中8,你會發現在尺寸檢查的Edge選項,命名爲內容的插圖,標題插入和圖像插入。

環境:XCode的7

Xcode7

使用代碼

斯威夫特3

myButton.titleEdgeInsets = UIEdgeInsetsMake(_ top: CGFloat, _ left: CGFloat, _ bottom: CGFloat, _ right: CGFloat); 
myButton.imageEdgeInsets = UIEdgeInsetsMake(_ top: CGFloat, _ left: CGFloat, _ bottom: CGFloat, _ right: CGFloat); 

目標C

[myButton setTitleEdgeInsets:UIEdgeInsetsMake(CGFloat top, CGFloat left, CGFloat bottom, CGFloat right)]; 
[myButton setImageEdgeInsets:UIEdgeInsetsMake(CGFloat top, CGFloat left, CGFloat bottom, CGFloat right)];