2010-06-13 7 views
0

J'ai recherché haut et bas pour quelque chose qui semble être une tâche simple. Pardonnez-moi, je viens à Android à partir d'autres langages de programmation et je suis nouveau sur cette plate-forme et Java. Ce que je veux faire est de créer une boîte de dialogue dans laquelle un utilisateur saisit du texte à rechercher et le code prend ce texte et le recherche dans tout le texte dans un contrôle EditText et s'il est trouvé, le mettre en surbrillance .Comment faire une recherche et mettre en surbrillance du texte dans un EditText

Je l'ai déjà fait, par exemple en VB et il est allé quelque chose de similaire à ce code pseudo:

  1. saisir le texte de la (EditText) assigner à une chaîne
  2. recherche la longueur de cette chaîne (caractère par caractère) pour la sous-chaîne, si elle est trouvée, renvoie la position (index) de la sous-chaîne dans la chaîne.
  3. se trouve, lancez le (EditText) .setSelection point fort commençant à la position retournée pour la durée de

Est-ce sens?

Je veux juste rechercher un EditText pour et quand trouvé, faites défiler vers lui et il sera mis en évidence. Peut-être qu'il y a quelque chose en Android/Java équivalent à ce dont j'ai besoin ici?

Toute aide/pointeurs seraient grandement appréciés

Répondre

3
  1. saisir le texte de la (EditText) assigner à une chaîne

Essayez l'exemple de code ci-dessous:

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

^^ Remplacez les ID par les ID que vous utilisez.

Après cela, vous disposez des méthodes de chaîne standard disponibles. Vous pouvez également utiliser pour Regex une requête de recherche complexe:

+0

excellent Merci. C'est ce que je cherchais. – marc