仍在學習Swift並且不知道Objective-C。我看到,爲了以編程方式更改按鈕的文本,需要使用titleEdgeInsets
,但我不確定如何使用它。在Swift中以編程方式更改UIButton的文本(填充)
我想改變按鈕(填充)在底部和左右兩邊的文字。
感謝您的任何迴應和/或例子!
仍在學習Swift並且不知道Objective-C。我看到,爲了以編程方式更改按鈕的文本,需要使用titleEdgeInsets
,但我不確定如何使用它。在Swift中以編程方式更改UIButton的文本(填充)
我想改變按鈕(填充)在底部和左右兩邊的文字。
感謝您的任何迴應和/或例子!
通過執行這些代碼行,您可以從頂部,左側,右側和底部添加填充。
button.titleEdgeInsets.left = 10; // add left padding.
button.titleEdgeInsets.right = 10; // add right padding.
button.titleEdgeInsets.top = 10; // add top padding.
button.titleEdgeInsets.bottom = 10; // add bottom padding.
仍然有效: iOS 11.2/Xcode 9.2/Swift 4.0/OSX 10.13.2
iOS 9.1/Xcode 7.1/Swift 2.1/OSX 10.10.5
:
titleEdgeInsets
並沒有爲我工作的方法。我的按鈕的框架緊緊地擁抱文本(我沒有指定框架大小),並且框架具有紅色背景色。做完之後:
myButton.titleEdgeInsets = UIEdgeInsetsMake(10,10,10,10)
紅色背景每邊縮小10像素,這意味着現在有些文字在紅色背景之外。使用負值對原始幀大小沒有影響。
我是能夠得到填充文本週圍,有效地使框架做大,做:
myButton.contentEdgeInsets = UIEdgeInsetsMake(5,5,5,5)
對於iOS 9.1 /的Xcode 7.1 /雨燕2.1
@IBOutlet weak var ratingButton: UIButton!
override func viewDidLoad() {
ratingButton.contentEdgeInsets = UIEdgeInsets(top:15,right:10,bottom:15,left:10)
super.viewDidLoad()
}
iOS的10和斯威夫特3示例
測試和工程上IOS 11和夫特4.
refineButton.contentEdgeInsets = UIEdgeInsets(top: 5, left: 0, bottom: 0, right: 0)
規定「編程」 – aeid
我不想假裝最佳答案的問題。只是爲了豐富信息。 –