我已经为按钮设置了背景图像,并将layer.cornerRadius
应用到该按钮,以便按钮就像一个圆圈,但图像被从角落切掉,所以我该如何将图像放在按钮的中心,这样当我应用layer.cornerRadius
时,就不应该从角落切掉图像,有没有办法让我可以从内侧到按钮框架留出一个空间.
这是我已经尝试过的:
myCheckBoxButton.setBackgroundImage(#imageLiteral(resourceName: "check-square"), for: .normal)
myCheckBoxButton.frame = CGRect(x: 120, y: 10, width: 40, height: 40)
myCheckBoxButton.backgroundColor = .blue
myCheckBoxButton.layer.cornerRadius = 20
myCheckBoxButton.showsTouchWhenHighlighted = true
myCheckName.text = "Checkbox"
myCheckName.textColor = .gray
myCheckName.frame = CGRect(x: 100 , y: 60, width: 80, height: 15)
在 aleksmutlu 回答后更新
一切正常,但图像不是白色透明的,而是蓝色的
更新完成
添加了自定义按钮类型
let myCheckBoxButton = UIButton(type: .custom)
最佳答案
您可以将图像设置为按钮的内容并为其添加一些插图,而不是设置背景图像。
myCheckBoxButton.setImage(#imageLiteral(resourceName: "check-square"), for: .normal)
myCheckBoxButton.imageEdgeInsets = UIEdgeInsetsMake(10, 10, 10, 10)
关于ios - 将图像设置在背景中心,按钮周围有内部空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48473196/