Удаление текста в EditText с помощью кнопки - PullRequest
1 голос
/ 07 марта 2012

Кто-нибудь знает, как сделать кнопку, которая удаляет один символ за раз в EditText?

Я попробовал следующее, что на самом деле неудачная попытка, потому что я не знаю, как это сделать:

public void onClick(View v) {
    // TODO Auto-generated method stub
     switch (v.getId()) {
     case R.id.keypad_0:
         edittext.setText(edittext.getText() + "0");
         break;
     case R.id.keypad_1:
         edittext.setText(edittext.getText() + "1");
         break;
     case R.id.keypad_2:
         edittext.setText(edittext.getText() + "2");
         break;
     case R.id.keypad_3:
         edittext.setText(edittext.getText() + "3");
         break;
     case R.id.keypad_4:
         edittext.setText(edittext.getText() + "4");
         break;
     case R.id.keypad_5:
         edittext.setText(edittext.getText() + "5");
         break;
     case R.id.keypad_6:
         edittext.setText(edittext.getText() + "6");
         break;
     case R.id.keypad_7:
         edittext.setText(edittext.getText() + "7");
         break;
     case R.id.keypad_8:
         edittext.setText(edittext.getText() + "8");
         break;
     case R.id.keypad_9:
         edittext.setText(edittext.getText() + "9");
         break;
     case R.id.keypad_minus:
         edittext.setText(edittext.getText() + "-");
         break;
     case R.id.keypad_del:
         edittext.setText(edittext.getText().length() - 1); //attempt here
         break;

Если кто-нибудь знает, пожалуйста, поделитесь

Ответы [ 2 ]

2 голосов
/ 07 марта 2012

Другой вариант:

edittext.setText(edittext.getText().delete(edittext.length() - 1, edittext.length()));
2 голосов
/ 07 марта 2012

Если вы просто хотите удалить последний символ, метод подстроки сработает хорошо:

edittext.getText().toString().substring(0, edittext.getText().toString().length()-1);

Приведенный выше код возвращает подстроку индекса 0 на длину строки -1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...