已经完成了单击识别器,但无法弄清楚如何将该单击识别器改为双击.
代码:
- import Foundation
- import UIKit
-
- class MainBoardController: UIViewController{
-
- let tap = UITapGestureRecognizer()
-
- override func viewDidLoad() {
- super.viewDidLoad()
- // Do any additional setup after loading the view,typically from a nib.
- var swipe: UISwipeGestureRecognizer = UISwipeGestureRecognizer(target: self,action: "GotoProfile")
- swipe.direction = UISwipeGestureRecognizerDirection.Right
- self.view.addGestureRecognizer(swipe)
-
- tap.addTarget(self,action: "GotoCamera")
- view.userInteractionEnabled = true
- view.addGestureRecognizer(tap)
- }
-
- override func didReceiveMemoryWarning() {
- super.didReceiveMemoryWarning()
- // Dispose of any resources that can be recreated.
- }
-
- func GotoProfile(){
- self.performSegueWithIdentifier("Profilesegue",sender: nil)
- }
-
- func GotoCamera(){
- self.performSegueWithIdentifier("Camerasegue",sender: nil)
- }
- }
解决方法
最终用扩展解决了这个问题:
- override func viewDidLoad() {
- super.viewDidLoad()
-
- let tapGR = UITapGestureRecognizer(target: self,action: #selector(PostlistViewController.handleTap(_:)))
- tapGR.delegate = self
- tapGR.numberOfTapsRequired = 2
- view.addGestureRecognizer(tapGR)
- }
- extension MainBoardController: UIGestureRecognizerDelegate {
- func handleTap(_ gesture: UITapGestureRecognizer){
- print("doubletapped")
- }
- }
总结
以上是w3xue为你收集整理的如何在Swift中添加双击手势识别器全部内容,希望文章能够帮你解决如何在Swift中添加双击手势识别器所遇到的程序开发问题。