有時間多更新幾種
方法一
var expandSizeKey = "expandSizeKey"
/// Expand click range
/// - Parameter size: size
open func kExpandSize(size:CGFloat) {
objc_setAssociatedObject(self, &expandSizeKey,size, objc_AssociationPolicy.OBJC_ASSOCIATION_COPY)
}
func expandRect() -> CGRect {
let expandSize = objc_getAssociatedObject(self, &expandSizeKey)
if (expandSize != nil) {
return CGRect(x: bounds.origin.x - (expandSize as! CGFloat), y: bounds.origin.y - (expandSize as! CGFloat), width: bounds.size.width + 2*(expandSize as! CGFloat), height: bounds.size.height + 2*(expandSize as! CGFloat))
}
return bounds;
}
open override func point(inside point: CGPoint, with event: UIEvent?) -> Bool {
let buttonRect = expandRect()
if (buttonRect.equalTo(bounds)) {
return super.point(inside: point, with: event)
}
return buttonRect.contains(point)
}
方法二
----TBD
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者