【问题标题】:(Swift) Handling user's tap on webView(Swift) 处理用户对 webView 的点击
【发布时间】:2020-02-12 14:08:30
【问题描述】:

我在屏幕上的 webView 底部有 webView 和一个隐藏的 stackView(3 buttons)

@IBOutlet weak var webView: WKWebView!
@IBOutlet weak var stackView: UIStackView!

默认情况下,stackView 是隐藏的,当用户点击 webView 上的某个位置时它应该是可见的。

override func viewDidLoad() {
        super.viewDidLoad()
        stackView.isHidden = true
    }

如何处理用户的点击以使我的“stackView”可见?

【问题讨论】:

    标签: ios swift webview uiwebview uitapgesturerecognizer


    【解决方案1】:

    你可以使用UITapGestureRecognizer,试试这个

    override func viewDidLoad() {
        super.viewDidLoad()
        let tapGesture = UITapGestureRecognizer(target: self, action: #selector(handleTap))
        tapGesture.delegate = self
        webView.addGestureRecognizer(tapGesture)
       } 
    
      @obj func handleTap() {
          stackView.isHidden = false
        }
    

    别忘了加UIGestureRecognizerDelegate

    如果它不起作用,则必须添加以下方法,因为WKWebView 已经有自己的手势识别器

    func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
      return true
    }
    

    【讨论】:

      猜你喜欢
      • 2021-06-25
      • 2011-08-25
      • 2018-07-17
      • 1970-01-01
      • 2015-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-09
      相关资源
      最近更新 更多