我正在寻找一种方法来双击复制本机WebView缩放,但通过长按而触发。因为,使用双标签缩放,我希望缩放以触摸点为中心缩放,然后能够以编程方式缩小到默认缩放级别。
我原以为可能有办法在longpress处理程序中将双击手势欺骗到WebView并为其提供长按的坐标,但我无法找到方法。
可以这样做吗?
答案 0 :(得分:0)
根据本文中的信息找到一个可行的,如果有点hacky解决方案:
Double tap Programmatically on WebView
我替换了以下内容:
public void simulateDoubleTap()
{
simulateDoubleTapEvent(0);
simulateDoubleTapEvent(2);
simulateDoubleTapEvent(2);
simulateDoubleTapEvent(1);
simulateDoubleTapEvent(0);
}
使用:
public void simulateDoubleTap()
{
simulateDoubleTapEvent(MotionEvent.ACTION_DOWN);
simulateDoubleTapEvent(MotionEvent.ACTION_UP);
simulateDoubleTapEvent(MotionEvent.ACTION_DOWN);
simulateDoubleTapEvent(MotionEvent.ACTION_UP);
}
然后从我的longpress处理程序中添加了对simulateDoubleTap()的调用。这似乎有效 - 但并非100%一致。可能想要在事件之间添加一些小延迟,看看是否能够平滑它。另外我注意到,当放大时,事情可以用于单个事件,但是它采用双击的两个触发器来缩小。这可能是因为我正在使用的手势处理程序或其他一些问题,但通常这似乎做了我需要的。