我正在創建一個自定義UIView
。我想知道如何在UIView
上覆制UIButton
行爲。自定義UIView addTarget?
我希望能夠撥打addTarget
就像UIButton
。
我知道,我可以繼承UIControl
,並呼籲
self.sendActionsForControlEvents(UIControlEvents.TouchUpInside);
但我想做到這一點上UIView
,因爲我設計它放在一個XIB文件。
我正在創建一個自定義UIView
。我想知道如何在UIView
上覆制UIButton
行爲。自定義UIView addTarget?
我希望能夠撥打addTarget
就像UIButton
。
我知道,我可以繼承UIControl
,並呼籲
self.sendActionsForControlEvents(UIControlEvents.TouchUpInside);
但我想做到這一點上UIView
,因爲我設計它放在一個XIB文件。
可以使用UITapGestureRecognizer
,將其添加在查看程序如下
self.userInteractionEnabled = true
let gesture:UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: "viewTapped:")
gesture.numberOfTapsRequired = 1
self.addGestureRecognizer(gesture)
和實施選擇,您還可以添加手勢使用廈門國際銀行
有一個簡單的方法來實現這一目標進行查看。
- >轉到您的類的Interface Builder構建器>>選擇要添加動作的視圖>>然後將IDENTITY INSPECTOR中的自定義類從UIView更改爲'UIControl'。
- >現在你可以添加任何IBAction方法到這個視圖。
它的工作就像魅力。 快樂編碼。 希望它可以幫助
這將是更好,如果我們談論swift3或SWIFT 4
let gesture:UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(targetViewDidTapped))
gesture.numberOfTapsRequired = 1
targetView?.isUserInteractionEnabled = true
targetView?.addGestureRecognizer(gesture)
添加UIControl與Backgound色彩清晰的自定義視圖邊界再加入目標是UIControl否則添加TapGesture到視圖 – TamilKing