检测同时按下两个或多个 UIButton
Detect two or more UIButtons being pressed at the same time
我在故事板上有三个 UIButtons
。
什么是最直接的检测时间的方法:
- 同时按下两个
UIButtons
?
或
- 同时按下三个
UIButtons
?
我想如果你使用 Touch Down 事件和 Touch Up 事件会很容易。
着陆:
当手指按下时
润色:
当手指抬起时。
因此,在 Touch Down 上设置触摸特定按钮的变量,并在 Touch Up 事件上检查当前是否正在触摸两个按钮。像这样:
class ViewController: UIViewController {
var Button_1_Pressed: Int = 0;
var Button_2_Pressed: Int = 0;
@IBAction func Button_1_Down(sender: AnyObject) {
Button_1_Pressed = 1;
}
@IBAction func Button_2_Down(sender: AnyObject) {
Button_2_Pressed = 1;
}
@IBAction func Button_1_Up(sender: AnyObject) {
if (Button_1_Pressed == 1 && Button_2_Pressed == 1){
println("1- Both Pressed at same time");
}
Button_1_Pressed = 0;
}
@IBAction func Button_2_Up(sender: AnyObject) {
if (Button_1_Pressed == 1 && Button_2_Pressed == 1){
println("2- Both Pressed at same time");
}
Button_2_Pressed = 0;
}
}
您可以使用 XCode 界面生成器设置这些 @IBAction,方法是在按钮上按 CTRL 键,然后选择事件并拖动到 swift 文件。上面的代码只实现了 2 个按钮,但它会给你一个关于其余按钮的想法。
如果您使用的是 iOS 模拟器,您可以使用 Option 键检测两次触摸。
我在故事板上有三个 UIButtons
。
什么是最直接的检测时间的方法:
- 同时按下两个
UIButtons
?
或
- 同时按下三个
UIButtons
?
我想如果你使用 Touch Down 事件和 Touch Up 事件会很容易。
着陆: 当手指按下时
润色: 当手指抬起时。
因此,在 Touch Down 上设置触摸特定按钮的变量,并在 Touch Up 事件上检查当前是否正在触摸两个按钮。像这样:
class ViewController: UIViewController {
var Button_1_Pressed: Int = 0;
var Button_2_Pressed: Int = 0;
@IBAction func Button_1_Down(sender: AnyObject) {
Button_1_Pressed = 1;
}
@IBAction func Button_2_Down(sender: AnyObject) {
Button_2_Pressed = 1;
}
@IBAction func Button_1_Up(sender: AnyObject) {
if (Button_1_Pressed == 1 && Button_2_Pressed == 1){
println("1- Both Pressed at same time");
}
Button_1_Pressed = 0;
}
@IBAction func Button_2_Up(sender: AnyObject) {
if (Button_1_Pressed == 1 && Button_2_Pressed == 1){
println("2- Both Pressed at same time");
}
Button_2_Pressed = 0;
}
}
您可以使用 XCode 界面生成器设置这些 @IBAction,方法是在按钮上按 CTRL 键,然后选择事件并拖动到 swift 文件。上面的代码只实现了 2 个按钮,但它会给你一个关于其余按钮的想法。
如果您使用的是 iOS 模拟器,您可以使用 Option 键检测两次触摸。