【问题标题】:UIWebView and touch eventUIWebView 和触摸事件
【发布时间】:2015-02-11 06:40:03
【问题描述】:

我想在视图中使用自定义触摸事件。有一个 Web 视图,它是该视图的子视图。 我重写了 touchBegan 和其他函数,但它没有运行。

【问题讨论】:

    标签: swift ios5 uiwebview touch-event


    【解决方案1】:

    如果你想在点击视图时调用一个函数,你可以使用 UITapGestureRecognizer

    override func viewDidLoad() {
        super.viewDidLoad()
        let tapRecognizer = UITapGestureRecognizer(target: view, action: "handleSingleTap:")
        tapRecognizer.numberOfTapsRequired = 1
        self.view.addGestureRecognizer(tapRecognizer)
    }
    
    func handleSingleTap(recognizer: UITapGestureRecognizer) {
        //Do something here with the gesture
    }    
    

    对于 Swift 3:

    override func viewDidLoad() {
        super.viewDidLoad()
        let tapRecognizer = UITapGestureRecognizer(target: view, action: #selector(handleSingleTap))
        tapRecognizer.numberOfTapsRequired = 1
        self.view.addGestureRecognizer(tapRecognizer)
    }
    
    @objc func handleSingleTap(recognizer: UITapGestureRecognizer) {
        //Do something here with the gesture
    }
    

    【讨论】:

    • 我知道。我的意思是这里有另一个 webview 并覆盖它。视图无法接收事件或手势。@mrBallista
    • 您是否尝试过禁用 webview 交互 webView.userInteractionEnabled = false
    • 但是我不能操作webview。我想同时使用这两个。
    • 好的,也许我们需要看一些代码来看看你真正想要做什么
    • 我已经完成了。可以使用手势。对不起。
    猜你喜欢
    • 1970-01-01
    • 2012-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多