2

良い一日!

コントロールを介して検索できる Android アプリ (v2.3.3 以降) がありますEditText。次のコードを使用して、ユーザーが完了し、ハードキーまたはソフトキーを押して検索を実行したことを検出しています。

EditText editText = (EditText)findViewById(R.id.search_box);    
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {

        if (actionId == EditorInfo.IME_ACTION_SEARCH ||
            actionId == EditorInfo.IME_ACTION_DONE ||
            (event.getAction() == KeyEvent.ACTION_DOWN && event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) 
        {
                performSearch();              
                return true;
        }

        return false;
    }
});

どうやら、ベータ テスターが HTC Evo ソフト キーボードの「Enter」キーは何もしないと私に言ったので、これは「Enter」を表現するすべての可能な方法を捉えているわけではありません。検索ハードキー (虫眼鏡) は機能しますが、このコードはソフト キーボードからのイベントをキャッチしていません。

いくつかの投稿を読むと、このタイプの質問に対するほとんどの回答には、上記のロジックの一部またはすべてが含まれています。また、HTC がいくつかのキーボード操作を異なる方法で行うことも読みました。

どのデバイスでも「Enter」入力を検出するための防弾コードを持っている人はいますか?

ありがとうございました!

4

3 に答える 3