[英]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.