私はいくつかのダブルクリック機能を備えた Web サイトを持っているので、Android ではブラウザをダブルクリックするとズームするだけです。だから私は WebView を構築しているので、ダブルクリックをオーバーライドして、本来のように反応させることができます。
public class myWebView extends Activity{
GestureDetector gs = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
WebView engine = (WebView) findViewById(R.id.web_engine);
engine.getSettings().setJavaScriptEnabled(true);
engine.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
engine.getSettings().setSupportMultipleWindows(true);
engine.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
return super.onJsAlert(view, url, message, result);
}
});
engine.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
engine.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if (gs == null) {
gs = new GestureDetector(
new GestureDetector.SimpleOnGestureListener() {
//overrides the double click
@Override
public boolean onDoubleTapEvent(MotionEvent e) {
// SOME CODE THAT SIMULATES A DOUBLE CLICK
return true;
}
});
}
gs.onTouchEvent(event);
return false;
}
});
engine.loadUrl("http://www.google.com");
}
}
したがって、関数 onDoubleTapEvent(MotionEvent e) は、ダブルクリックのイベントでその間にあるものをすべて実行します。 上記のコードは、Cehm のおかげでもあります。
したがって、この時点で、だましてダブルクリックを実行させる必要があります。そこで数回のクリックをシミュレートできますか?