2014-11-14 2 views
1

У меня есть EditText в моем приложении, которое вызывает клавиатуру при нажатии. Когда нажата клавиша возврата, я бы хотел вызвать метод Java. Есть ли boolean или метод, который позволит мне выполнить это действие? Я искал documentation для чего-то, что мне поможет, но я не уверен, как его использовать.Выполнить действие по обратному ключу клавиатуры Android

Если это невозможно, можно ли удалить или отключить ключ возврата или изменить его на клавишу «Готово» на клавиатуре?

ответ

2

Вы можете использовать imeOptions - actionDone для EditText.

XML:

<EditText 
    android:id="@+id/edt_txt" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:imeOptions="actionDone" 
/> 

активность:

myEdtText.setOnEditorActionListener(new OnEditorActionListener() { 

    @Override 
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { 
     // TODO Auto-generated method stub 
     if (actionId == EditorInfo.IME_ACTION_DONE) { 
      //Call your method here 
      return true; 
     } 

     return false; 
    } 
}); 

Надеется, что это помогает.

+1

То, что мне нужно. Спасибо! – wasimsandhu

+0

На самом деле, я получаю сообщение об ошибке во всем коде после @Override. В нем говорится «недостижимый оператор», особенно после импорта класса KeyEvent. – wasimsandhu

+0

Вы добавляете этот код после возврата true? @awkwardgiraffe –