我想在标题的右侧添加一个像这样的图像
|Button [image]|
|title |
我可以通过此代码实现此目的
button.titleEdgeInsets = UIEdgeInsetsMake(0, -10, 0, 0)
button.imageEdgeInsets = UIEdgeInsetsMake(0, 135, 0, 5)
但是当标题很大时,标题标签和图像相互交叉。 如何打破标题标签?
答案 0 :(得分:3)
试试这个,它永远不会相互交叉标题和图像。我在中心的故事板中创建了一个按钮。
@IBOutlet weak var myButton: UIButton!
let somespace: CGFloat = 10
self.myButton.setImage(UIImage(named: "cross"), forState: UIControlState.Normal)
self.myButton.imageEdgeInsets = UIEdgeInsetsMake(0, self.myButton.frame.size.width - somespace , 0, 0)
print(self.myButton.imageView?.frame)
self.myButton.titleEdgeInsets = UIEdgeInsetsMake(0, (self.myButton.imageView?.frame.width)! + somespace, 0, 10 )
如果你想要按钮更改换行模式的多行标题按钮的标题
self.myButton.titleLabel!.lineBreakMode = NSLineBreakMode.ByWordWrapping
Swift 3.0
在swift 3.0中,您可以在界面构建器中轻松完成。
选择UIButton - >属性检查器 - >转到大小检查器并修改图像或标题插入。如果你想要按钮右侧的图像,只需在语义视图实用程序中选择强制Right-to-left
答案 1 :(得分:0)