我正在使用UIButton的这个扩展,忽略按钮的透明颜色的点击
open override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
if (!self.bounds.contains(point)) {
return nil
}
else {
let color : UIColor = self.getColourFromPoint(point: point)
let alpha = color.cgColor.alpha;
if alpha <= 0.0 {
debugPrint("no tocado")
return nil
}
return self
}
}
当我调用UIImagePickerController时,按钮只有透明背景的文字,很难打到它们......
有一些方法可以检测按钮的上下文以避免UIImagePickerController中的这个扩展吗? 或者在UIImagePickerController的按钮中加入一些背景而不需要自定义选择器?
谢谢!
答案 0 :(得分:0)
您可以在hitTest函数的开头执行此操作:
if self.isKind(of: UIImagePickerController.self){
return nil
}