[英]UIButton Image is not clickable
我正在尝试将图像添加到MDCRaisedButton中,这是UIButton的扩展类,用于Google的 MaterialComponents
。 我可以将图像添加到按钮,但是图像不可单击。 我曾经尝试都将UITapGestureRecognizer
和addTarget
,但对他们俩的问题仍然存在。 事实是,图像本身不可单击,但是如果我单击保留在图像下方和上方的按钮的较小部分,则会执行按钮的单击操作。 这有什么问题呢? 下面是我的按钮代码
btnCalibrate = MDCRaisedButton()
btnCalibrate?.setImage(UIImage(named: "chip"), for: .normal)
btnCalibrate?.backgroundColor = UIColor(netHex: Constants.color)
btnCalibrate?.layer.cornerRadius = 40.0
btnCalibrate?.imageEdgeInsets=UIEdgeInsets(top: 5, left: 2, bottom: 5, right: 2)
btnCalibrate?.imageView?.contentMode = .scaleAspectFit
btnCalibrate?.isUserInteractionEnabled=true
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(recalibrateFromImageView(_:)))
btnCalibrate?.addGestureRecognizer(tapGesture)
btnCalibrate?.translatesAutoresizingMaskIntoConstraints=false
//btnCalibrate?.addTarget(self, action: #selector(recalibrate(_:)), for: [.touchUpInside])
self.addSubview(btnCalibrate!)
我也尝试添加了手势识别到imageView
中的UIButton
,但同样是行不通的。
该图像当前正居中。 如果单击按钮的其他可见部分,则几乎无法单击。 我该如何处理?
尝试
let plusImage = UIImage(named: "chip").withRenderingMode(.alwaysTemplate)
btnCalibrate.setImage(plusImage, for: .normal)
要么
let plusImage = UIImage(named: "chip").withRenderingMode(.alwaysTemplate)
btnCalibrate.setBackgroundImage(plusImage, for: .normal)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.