0

OnKeyDownイベントをxmlのEditTextに割り当てる方法はありますか?私はコードでそれを行う方法を知っていますが、XMLですか?

(実際には、「Enter」プレスをキャプチャしたくないので、もっと簡単な方法があるのではないでしょうか?)

ありがとう、ロン

4

2 に答える 2

2

私の知る限り: いいえ、XML でキャプチャする「簡単な」方法はありません。onClickxml でのみキャプチャできます。したがって、XML にする必要がある場合は、次の操作を実行できます。

  1. カスタム クラスで EditText を拡張します。

それから

1.2. カスタム スタイル属性を定義します (つまり、"onKeyDown")。やり方はこちらをご覧ください。文字列を値として使用することをお勧めします。

1.3。ここでトリッキーな部分: リフレクションを使用してアクティビティで onKeyListener を見つけ、それを KeyListener としてカスタム editText に追加する必要があります。

また

2.2アクティビティにonKeyListenerを実装させ、カスタムEditTextのコンストラクターで特定のコンテキストをキャストするだけです

于 2011-10-30T17:19:16.953 に答える
1

xml で android:imeOptions を使用して、ボタンの動作を選択できます。

そして、次のようにボタンをオーバーライドできます。

editText.setOnEditorActionListener(new OnEditorActionListener() {

        @Override
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
            /// Do stuff here
        }
    });
于 2011-10-30T17:15:53.707 に答える