我正在嘗試計算某人在同一時間觸摸按鈕的數量。用Swift多重觸動UIButton?
我點擊一次:+1,我用兩個手指輕按:+2,我用三根手指輕點:+3等等...
我目前有:
var count = 0;
@IBAction func onTap(sender: UIButton) {
count++;
}
然而,「onTap」功能,即使我用多根手指觸摸按鈕,也只觸發一次。
我該如何跟蹤按鈕被觸摸的手指數量?
我正在嘗試計算某人在同一時間觸摸按鈕的數量。用Swift多重觸動UIButton?
我點擊一次:+1,我用兩個手指輕按:+2,我用三根手指輕點:+3等等...
我目前有:
var count = 0;
@IBAction func onTap(sender: UIButton) {
count++;
}
然而,「onTap」功能,即使我用多根手指觸摸按鈕,也只觸發一次。
我該如何跟蹤按鈕被觸摸的手指數量?
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var bigButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
let oneFingerTap = UITapGestureRecognizer(target: self, action:"oneFingerTapDetected:")
oneFingerTap.numberOfTouchesRequired = 1
let twoFingerTap = UITapGestureRecognizer(target: self, action:"twoFingerTapDetected:")
twoFingerTap.numberOfTouchesRequired = 2
let threeFingerTap = UITapGestureRecognizer(target: self, action:"threeFingerTapDetected:")
threeFingerTap.numberOfTouchesRequired = 3
bigButton.addGestureRecognizer(oneFingerTap)
bigButton.addGestureRecognizer(twoFingerTap)
bigButton.addGestureRecognizer(threeFingerTap)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
func oneFingerTapDetected(sender:UITapGestureRecognizer) {
println("one")
}
func twoFingerTapDetected(sender:UITapGestureRecognizer) {
println("two")
}
func threeFingerTapDetected(sender:UITapGestureRecognizer) {
println("three")
}
}
所以如果我想爲所有10個手指製作一個Tap Gesture Recognizer,那麼我必須做一個新的UITapGestureRecognizer(在For循環中)全部10個手指? 還是有更簡單的方法來允許多達10個手指? – Bob
@Bob 10指支持在iOS中不可用,最大值爲5。 –
您將需要使用輕擊手勢識別器 –
您介意給出一個例子嗎? – Bob
我覺得一個按鈕對於三指輕敲可能太小了。如果你想讓我展示如何檢測視圖上的3個手指點擊,我可以向你展示它。 –