Курсор находится в позиции editText в нуле

При вводе текстовых значений редактирования с использованием созданной мной раскладки клавиатуры курсор находится в начальной позиции. Положение курсора не перемещается в соответствии с введенными значениями. Есть ли способ реализовать это. Код выглядит следующим образом:

String zip;
OnClickListener clickListener = new OnClickListener() {

            @Override
            public void onClick(View v) {
                final int id = v.getId();
                if (id == R.id.button0) {
                    zip = zip + "0";
                    editZip.setText(zip);
                } else if (id == R.id.button1) {
                    zip = zip + "1";
                    editZip.setText(zip);
                } else if (id == R.id.button2) {
                    zip = zip + "2";
                    editZip.setText(zip);
                } else if (id == R.id.button3) {
                    zip = zip + "3";
                    editZip.setText(zip);
                } else if (id == R.id.button4) {
                    zip = zip + "4";
                    //editZip.requestFocus();
                    editZip.setText(zip);
                } else if (id == R.id.button5) {
                    zip = zip + "5";
                    editZip.setText(zip);
                } else if (id == R.id.button6) {
                    zip = zip + "6";
                    editZip.setText(zip);
                } else if (id == R.id.button7) {
                    zip = zip + "7";
                    editZip.setText(zip);
                } else if (id == R.id.button8) {
                    zip = zip + "8";
                    editZip.setText(zip);
                } else if (id == R.id.button9) {
                    zip = zip + "9";
                    editZip.setText(zip);
                } else if (id == R.id.buttonDel) {
                    if (zip.length() > 0) {
                        zip = zip.substring(0, zip.length()-1);
                        editZip.setText(zip); 
                    }   
                }

            }
        };

person info    schedule 28.10.2013    source источник
comment
вы действительно должны использовать переключатель для удобства чтения...   -  person JoxTraex    schedule 28.10.2013


Ответы (1)


Используйте setSelection(int) для перемещения курсора должность.

editZip.setSelection(editZip.getText().length());

Наконец-то в код OnClickListener.


Некоторые ссылки на SO

  1. Как установить положение курсора в EditText?
  2. Поместите курсор в конец текста в EditText
person Pankaj Kumar    schedule 28.10.2013