Как включить выделенные меню по умолчанию в веб-обозревателе Android?
Как включить контекстное меню по умолчанию, например: Копировать/Вставить/Поиск/Поделиться в веб-браузере android?
![enter image description here]()
Ответы
Ответ 1
Работая с Android 1.5 - 2.3, вы можете использовать emulateShiftHeld()
, опубликованный с версии 2.2, но теперь устаревший. этот метод помещает ваш WebView в режим выбора текста.
https://developer.android.com/reference/android/webkit/WebView.html#emulateShiftHeld%28%29
К сожалению, в Android нет функции копирования/вставки/поиска/совместного использования, так как Android 2.0 выбор текста
может управляться прикосновением, но кроме этого нет другой вещи, которую вы можете сделать.
Ответ 2
Я нашел обходное решение для этого
Проверьте метод selectText() в WebView (он не в API, но может быть вызван с помощью отражения)
вот мой полный исходный код метода:
public void startTextSelection() {
try {
WebView.class.getMethod("selectText").invoke(this);
} catch (Exception e) {
try {
WebView.class.getMethod("emulateShiftHeld").invoke(this);
} catch (Exception e1) {
KeyEvent shiftPressEvent = new KeyEvent(0, 0,
KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_SHIFT_LEFT, 0, 0);
shiftPressEvent.dispatch(this);
Toast.makeText(getContext(), R.string.select_text, Toast.LENGTH_LONG).show();
}
}
}
Работает также с ICS.
Ответ 3
Попробуйте следующее:
mWebView.setHapticFeedbackEnabled(true);
mWebView.setLongClickable(true);