为了账号安全,请及时绑定邮箱和手机立即绑定

如何在android中的webview上获得onclick事件?

如何在android中的webview上获得onclick事件?

陪伴而非守候 2019-07-30 14:34:04
如何在android中的webview上获得onclick事件?我想知道用户何时点击webview而不是超链接。在该单击时,我想显示/隐藏包含webview的活动视图。有什么建议吗?
查看完整描述

3 回答

?
慕的地8271018

TA贡献1796条经验 获得超4个赞

您可以通过OnTouchListener实现OnClickListener:

webView.setOnTouchListener(new View.OnTouchListener() {
        public final static int FINGER_RELEASED = 0;
        public final static int FINGER_TOUCHED = 1;
        public final static int FINGER_DRAGGING = 2;
        public final static int FINGER_UNDEFINED = 3;
        private int fingerState = FINGER_RELEASED;
        @Override
        public boolean onTouch(View view, MotionEvent motionEvent) {
            switch (motionEvent.getAction()) {
                case MotionEvent.ACTION_DOWN:
                    if (fingerState == FINGER_RELEASED) fingerState = FINGER_TOUCHED;
                    else fingerState = FINGER_UNDEFINED;
                    break;
                case MotionEvent.ACTION_UP:
                    if(fingerState != FINGER_DRAGGING) {
                        fingerState = FINGER_RELEASED;
                        // Your onClick codes
                    }
                    else if (fingerState == FINGER_DRAGGING) fingerState = FINGER_RELEASED;
                    else fingerState = FINGER_UNDEFINED;
                    break;
                case MotionEvent.ACTION_MOVE:
                    if (fingerState == FINGER_TOUCHED || fingerState == FINGER_DRAGGING) fingerState = FINGER_DRAGGING;
                    else fingerState = FINGER_UNDEFINED;
                    break;
                default:
                    fingerState = FINGER_UNDEFINED;
            }
            return false;
        }
    });


查看完整回答
反对 回复 2019-07-30
  • 3 回答
  • 0 关注
  • 3386 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信