Я добавляю некоторые пользовательские пункты меню в меню контекстного действия. Мне нужно предоставить функцию веб-поиска со словами, выбранными в WebView.Как получить выделенный текст webview в ActionMode override
Я переопределяю ActionMode, используя этот код.
@Override
public void onActionModeStarted(ActionMode mode) {
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
if (mActionMode == null) {
mActionMode = mode;
Menu menu = mode.getMenu();
mode.getMenuInflater().inflate(R.menu.menu_search, menu);
}
}
super.onActionModeStarted(mode);
}
public void onContextualMenuItemClicked(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_search:
//HERE I WANT TO GET THE TEXT: HOW CAN I?
break;
}
if (mActionMode != null) {
mActionMode.finish();
}
}
Я хочу найти свой сайт, используя слово, выбранное пользователем в WebView, но я couln't получить способ получить выделенный текст. Как я могу это получить, любой, пожалуйста, помогите.
Заранее спасибо.
с Android API> = 19 вы можете использовать 'webview.evaluateJavascript ("(функция() {вернуться window.getSelection(). ToString()})()", новый ValueCallback() { @Override public void onReceiveValue (String value) { Log.v (TAG, "SELECTION:" + value); }}); 'В старых версиях ваш единственный курорт - это настраиваемый интерфейс javascript с единственным методом, принимающим' String', который вы должны вызывать через 'webview.loadUrl', передавая одно и то же (' js.callback (window.getSelection () .ToString()) '). –
Stan
@ Стань, пожалуйста, поместите его в качестве кода в ответ? –