Отправить событие backspace key для редактирования текста

Я не знаю, как отправить событие ключевого слова backspace в EditText из моей собственной кнопки. Вот что я пробовал:

Button backSpace=(Button)findViewById(R.id.backSpace_tab);
backSpace.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        text.dispatchKeyEvent(new  KeyEvent(KeyEvent.KEYCODE_DEL,KeyEvent.KEYCODE_P));
    }
});

Ответы

Ответ 1

Из Android-разработчиков:

public KeyEvent (int action, int code)

Создайте новое ключевое событие.

Параметры
действие Код действия: либо ACTION_DOWN, ACTION_UP, либо ACTION_MULTIPLE.
код key code

Первым параметром должен быть код действия. В вашем случае вы должны использовать ACTION_DOWN, потому что вы хотите имитировать нажатие клавиши:

public static final int ACTION_DOWN

Значение getAction(): клавиша нажата.

Итак, это должно работать:

@Override
public void onClick(View v)
{
    text.dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_DEL));
}