Tecnologia do Blogger.
RSS

[androidbrasil-dev] Re: [Android Dev] - Criando mascara para EditText.

Uses ed.getText().length() instead ed.getText().toString().length()

Em sábado, 16 de abril de 2011 20h44min26s UTC-3, Deivison escreveu:

ed.setSelection(ed.getText().toString().length()); <- Melhoria para posicionar o cursor.


Em 16 de abril de 2011 20:40, Deivison Servat Sporteman <deivison....@gmail.com> escreveu:
Boa noite galera,
Tive que criar uma mascara em tempo de execução para um campo... uma mascara Datetime. ( dd/mm/yyyy HH24:mi ).  Não sei se fiz da melhor forma... mas segue abaixo o código que fiz...pode ajudar alguém ..ou virar um post em algum blog^^.

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.routes_activity);

EditText dtIni = (EditText) findViewById(R.id.txtDtIni);

EditText dtEnd = (EditText) findViewById(R.id.txtDtEnd);

dtIni.setOnKeyListener(new DateTimeMask());

dtEnd.setOnKeyListener(new DateTimeMask());

}


class DateTimeMask implements OnKeyListener {


@Override

public boolean onKey(View v, int keyCode, KeyEvent event) {

Log.i("TIME", "keyCode:" + keyCode);

EditText ed = (EditText) v;

if (event.getAction() == KeyEvent.ACTION_UP

&& keyCode != KeyEvent.KEYCODE_DEL) {

int length = ed.getText().toString().length();

switch (length) {

case 2: {

ed.setTextKeepState(ed.getText() + "/");

break;

}

case 5: {

ed.setTextKeepState(ed.getText() + "/");

break;

}

case 10:{

ed.setTextKeepState(ed.getText() + " ");

break;

}

case 13:{

ed.setTextKeepState(ed.getText() + ":");

break;

}

default:

break;

}

}

                        //Posiciona o cursor no fim

Selection.setSelection(ed.getText(), ed.getText().toString()

.length());

return false;

}


}



Abraços,

Atenciosamente,


--

Deivison Servat Sporteman


--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário