Выделение текста в TextView или WebView Можно ли выделить текст в TextView или WebView? Я вижу, что это возможно в EditText Текст Highligh в EditText Я хотел бы сделать то же самое в TextView или WebView. Это возможно? Ответ 1 включить текстовое пространство Spashable! по умолчанию Spannable storage в EditText имеет значение true. так TextView myTV = (TextView)findViewById(R.id.textView1); String textString = "StackOverFlow Rocks!!!"; Spannable spanText = Spannable.Factory.getInstance().newSpannable(textString); spanText.setSpan(new BackgroundColorSpan(0xFFFFFF00), 14, 19, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); myTV.setText(spanText); Ответ 2 Вы также можете использовать это решение для WebView. Вызов findAllAsync webview.findAllAsync(((EditText) findViewById(R.id.edit)).getText().toString()); чем добавить FindListener в WebView webview.setFindListener(new FindListener() { @Override public void onFindResultReceived(int activeMatchOrdinal, int numberOfMatches, boolean isDoneCounting) { Toast.makeText(getApplicationContext(), "Matches: " + numberOfMatches, Toast.LENGTH_LONG).show(); } }); Итерацию в результате с помощью webview.findNext(false);, где false/true показывает направление. Но это решение было добавлено в API level 16!!! Вместо того, чтобы вы можете настроить JavaScript для higlihting - http://www.nsftools.com/misc/SearchAndHighlight.htm Ответ 3 Собственно, вам не нужно разрабатывать эту функцию самостоятельно. Вам просто нужно использовать EditText вместо TextView, пока вы установите для android: editable EditText значение false. Мой ответ здесь, надеюсь, он может вам помочь: fooobar.com/info/267497/...
Ответ 1 включить текстовое пространство Spashable! по умолчанию Spannable storage в EditText имеет значение true. так TextView myTV = (TextView)findViewById(R.id.textView1); String textString = "StackOverFlow Rocks!!!"; Spannable spanText = Spannable.Factory.getInstance().newSpannable(textString); spanText.setSpan(new BackgroundColorSpan(0xFFFFFF00), 14, 19, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); myTV.setText(spanText);
Ответ 2 Вы также можете использовать это решение для WebView. Вызов findAllAsync webview.findAllAsync(((EditText) findViewById(R.id.edit)).getText().toString()); чем добавить FindListener в WebView webview.setFindListener(new FindListener() { @Override public void onFindResultReceived(int activeMatchOrdinal, int numberOfMatches, boolean isDoneCounting) { Toast.makeText(getApplicationContext(), "Matches: " + numberOfMatches, Toast.LENGTH_LONG).show(); } }); Итерацию в результате с помощью webview.findNext(false);, где false/true показывает направление. Но это решение было добавлено в API level 16!!! Вместо того, чтобы вы можете настроить JavaScript для higlihting - http://www.nsftools.com/misc/SearchAndHighlight.htm
Ответ 3 Собственно, вам не нужно разрабатывать эту функцию самостоятельно. Вам просто нужно использовать EditText вместо TextView, пока вы установите для android: editable EditText значение false. Мой ответ здесь, надеюсь, он может вам помочь: fooobar.com/info/267497/...