1. ホーム
  2. android

EditTextでエンターキーを押してもテキストが複数行にならないようにする

2023-10-13 12:16:55

質問

AndroidのEditTextで、複数行のテキストを入力できないようにしても、表示が複数行になるようにするにはどうしたらよいでしょうか?

内蔵のSMSアプリケーションで、改行入力はできないがテキストは複数行で表示されるのと同じようなものです。

解決方法は?

ウィジェットをサブクラス化し、キーイベントの処理をオーバーライドして Enter キーをブロックします。

class MyTextView extends EditText
{
    ...
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event)
    {
        if (keyCode==KeyEvent.KEYCODE_ENTER) 
        {
            // Just ignore the [Enter] key
            return true;
        }
        // Handle all other keys in the default way
        return super.onKeyDown(keyCode, event);
    }
}