Android下模拟点击事件

要实现在WebView上模拟点击效果,效果一直不好,函数是搜索得到的,有几点需要注意:

1、按下和松开之间的时间要相同

2、用dispatchTouchEvent分发事件

3、调用recycle()回收事件

        private void setSimulateClick(View view, float x, float y) {
            long downTime = SystemClock.uptimeMillis();
            final MotionEvent downEvent = MotionEvent.obtain(downTime, downTime,
                MotionEvent.ACTION_DOWN, x, y, 0);
            //downTime += 2500;
            final MotionEvent upEvent = MotionEvent.obtain(downTime, downTime,
                MotionEvent.ACTION_UP, x, y, 0);
//          view.onTouchEvent(downEvent);
//          view.onTouchEvent(upEvent);
            view.dispatchTouchEvent(downEvent);
            view.dispatchTouchEvent(upEvent);
            downEvent.recycle();
            upEvent.recycle();
        }  
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容