Selecionar o conteudo no EditText

Preciso da ajuda de vcs:

Tenho um edit com o evento setOnFocusChangeListener e nele estou bloqueando a abertura do teclado. como vc podem ver abaixo:
Quando entrasse o focus no editText eu gostaria de selecionar todo o conteudo, mais não estou conseguindo.

Alguem tem alguma dica?

edtDescEmb.setOnFocusChangeListener(new OnFocusChangeListener() {
		public void onFocusChange(View v, boolean hasFocus) {
                                // Travando a Abertura do Teclado............................
				edtDescEmb.setInputType(InputType.TYPE_NULL);
				if (hasFocus){
					Log.e("Passou", "Focus edtDescEmb");
					edtDescEmb.selectAll();  
					//edtDescEmb.requestFocus(); 
					//edtDescEmb.s
					//edtDescEmb.setSelection(0, edtDescEmb.getText().length() - 1);
				}else{
					
					
				}
			}
		});

Valewww

Leandrooooo

Boa tarde!

Já tentou inverter a lógica?

Primeiro dar um selectAll e depois trocar o InputText?

Sim tentei e nada.

Cara deve ser uma coisinha boba e eu não resolvo.

Mais alguem tem alguma dica?

Tenta isto aqui no seu listener de focus:

if (hasFocus) { Selection.setSelection(edtDescEmb.getText(), 0, edtDescEmb.length()); } edtDescEmb.setInputType(InputType.TYPE_NULL);

Também não foi.

o que será que ta pegando!

Você tá pegando o foco apertando TAB ou “botão para baixo”, ou está fazendo isso por um dispositivo móvel, clicando na tela (touch)?

Em um dispositivo tocando na tela.

Então é isso, faça este código através da listener de touch (setOnTouchListener).

Testa aí! :smiley:

Pode dar uma exemplo?

Não entendi.

Na verdade, tem um jeito mais fácil ainda.

Utilize o InputType null e o setSelectAllOnFocus, sem precisar de nenhum listener.

edtDescEmb.setInputType(InputType.TYPE_NULL); edtDescEmb.setSelectAllOnFocus(true);

Cara, pode parecer brincadeira mais não funcionou.

O aparelho q estou usando é Tablet Samsung p3100 Android 4.0.

Não sei o que acontence.

:frowning:

Caraca!

Você fez este código dentro do onFocusChangeListener?

Testei aqui é o input nao está permitindo selecionar o conteudo.

Codigo abaixo Funcionou:

edtDescEmb.setSelectAllOnFocus(true);
edtDescEmb.setSelection(0, edtDescEmb.length());

já esse não funciona, nem se eu inverter a ordem o input:

edtDescEmb.setSelectAllOnFocus(true);
edtDescEmb.setSelection(0, edtDescOfe.length());
edtDescEmb.setInputType(InputType.TYPE_NULL);

tem outra forma de ocultar o teclado?

Vamos por tentativas, rsrsrs.

Tente isso aqui:

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(edtDescEmb.getWindowToken(), 0);

Nao Funfou…

:slight_smile:

Tente combinar os dois casos:

edtDescEmb.setInputType(0); InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(edtDescEmb.getWindowToken(), 0);

Com esse input nao vai nao.

no XML do EditText coloque
android:selectAllOnFocus=“true”