後でキーボードを非表示にせずに、Enter キーでアクションを完了したいと思います。現在、何かを入力してEnterボタンを押すたびに、次の入力を受け入れるためにEditText入力がクリアされますが、キーボードが消えると、キーボードが再び表示されるようにEditTextをもう一度クリックする必要があります...
現在、これは私のレイアウトにあります:
<EditText
android:id="@+id/etCommand"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/commandHint"
android:inputType="textNoSuggestions"
android:imeOptions="actionSend" >
</EditText>
そしてコード:
etCommand = (EditText) findViewById(R.id.etCommand);
etCommand.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_SEND) {
sendCommand();
}
return false;
}
});
編集
swayam が示唆したように、OS がアクションが処理されたと判断し、そのままにしておくために、true
内部に戻る必要がありました。onEditorAction