Как искать и выделять текст в EditText - PullRequest
1 голос
/ 13 июня 2010

Я искал высоко и низко что-то, что кажется простой задачей. Извините, я перехожу на Android с других языков программирования, и я новичок в этой платформе и Java.

Я хочу создать всплывающее диалоговое окно, в котором пользователь вводит текст для поиска, а код берет этот текст и ищет его по всему тексту в элементе управления EditText, и если он найден, выделите его.

Я делал это раньше, например, в VB, и это было похоже на псевдокод:

  1. возьмите текст из (EditText), назначьте его строке
  2. поиск длины этой строки (символ за символом) для подстроки, если она найдена, вернуть позицию (индекс) подстроки в строке.
  3. если найдено, начните выделение (EditText) .setSelection, начиная с возвращенной позиции, для длины

Имеет ли это смысл?

Я просто хочу найти EditText, и когда он будет найден, выделите его, и он будет выделен. Может быть, в Android / Java есть что-то, что мне нужно здесь?

Любая помощь / указатели будут с благодарностью

1 Ответ

3 голосов
/ 13 июня 2010
  1. захватить текст из (EditText) назначить его в строку

Попробуйте пример кода ниже:

EditText inputUsername = (EditText) findViewById(R.id.manageAccountInputUsername);
inputUsername.getText().toString()

^^ Замените идентификаторы теми идентификаторами, которые вы используете.

После этого вам доступны стандартные строковые методы. Вы также можете использовать Regex для сложного поискового запроса:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...