私はwebViewを持っています。WebView は、テキスト、画像、ボタンなど
を含む html を表示します。
1) そのユーザーは webView でテキストを選択できません
2) ボタンによるクリックとロング クリックの同じ動作。
問題を解決するために次のことを行いました。まず、html ページ スタイルに追加しました。
body {
...
-webkit-user-select: none;
-webkit-touch-callout: none;
...
}
しかし、それは私を助けませんでした。このソリューションは、すべての Android では機能しませんでした。
そこで、タッチリスナーをwebViewに追加しようとしました。
リスナーのコード:
webView.setOnTouchListener(new OnTouchListener() {
private float prevX;
private float prevY;
@Override
public boolean onTouch(View v, MotionEvent event) {
boolean handled = true;
if (MotionEvent.ACTION_DOWN == event.getAction()) {
prevX = event.getX();
prevY = event.getY();
} else if (MotionEvent.ACTION_UP == event.getAction()) {
if (Math.abs(event.getX() - prevX) < 50
&& Math.abs(event.getY() - prevY) < 50) {
handled = (event.getEventTime() - event
.getDownTime()) > 200;
}
}
Log.d("-------------------------------------------------", ""+handled);
return handled;
}
});
しかし、これもうまくいきませんでした。何か間違ったことをしたのでしょうか?その後、ロングクリックリスナーを追加しようとしました:
webView.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
v.performClick();
return true;
}
});
このソリューションは、最初の問題のみを解決します。
それで、どこで間違ったのですか?