2015-07-21 11 views
9

Sono nuovo di Android e sto cercando di capire come concentrarmi su EditText e selezionare tutto il testo al suo interno.Android EditText - Concentrati su di esso e seleziona tutto il testo a livello di programmazione

Ecco lo scenario:

  1. utente inserisce nome utente nel EditText

  2. App valuta in qualche modo e se il nome utente non è valido, dovrebbe fuoco automaticamente testo Nome utente Modifica e seleziona tutto il testo che l'utente ha inserito in precedenza in modo che l'utente non debba backspace per cancellarlo per reimmettere il nuovo nome utente.

Molto apprezzato,

+0

POSSIAMO seleziona una parola specifica programmaticamente? per esempio, come 'select (start, end)' –

risposta

3

ho capito. Ecco cosa ho fatto.

Ho un pulsante che l'utente fa clic quando immette il nome utente (il pulsante positivo su DialogFragment). In caso di clic del pulsante, faccio questo:

editUserName.setSelectAllOnFocus(true); 
editUserName.selectAll(); 

Questo focalizzerà e selezionerà tutto il testo in EditText.

+1

'editUserName.requestFocus();' invece di 'selectAll()'. – Xdg

9

Per selezione di tutto il testo di EditText, è possibile utilizzare

editText.setSelection(0,editText.getText().toString().length());

e se si desidera impostare la posizione cursore è possibile utilizzare

editText.setSelection(position);

+0

'toString()' non è necessario. – Suragch

Problemi correlati