1
我有一個簡單的UITapGestureRecognizer
,並在其相應的方法中插入了一條print語句。以下是我寫的代碼:Swift UITapGestureRecognizer不能按預期工作
let tap = UITapGestureRecognizer(target: self, action: #selector(self.segmentTapped(sender:)))
tap.numberOfTapsRequired = 1
self.segmentedControl.addGestureRecognizer(tap)
上述代碼在viewDidLoad
方法中執行。
此外,它的目標的方法是:
func segmentTapped(sender: UITapGestureRecognizer) {
print("called")
}
與所述程序中存在的問題是,「叫」字時,纔會打印在控制檯當segmentedControl
輕敲兩次。如果僅點擊一次,則不會打印出來。我很困惑,爲什麼會發生這種情況,因爲我已將手勢的numberOfTapsRequired
屬性設置爲1.
是什麼類型'segmentedControl'?它在名稱中具有「控制」的事實讓我覺得別的東西可能正在捕捉手勢 –
這是因爲分段控件具有自己的手勢,可以處理您的分段按鈕的水龍頭。 – nferocious76
Doug,我正在使用名爲KMSegmentedControl的第三方庫。到圖書館的鏈接:https://cocoapods.org/pods/KMSegmentedControl –