6

私はそれが周りに尋ねられたことを知っていますが、私はまだ答えを見つけていません(Androidは初めてなので、無知で申し訳ありません)

私のアプリの起動アクティビティには、EditText (検索ボックスと呼ばれる)、ListView (指定)、および Spinner (タイプ) があります。

EditText を検索ボックスとして使用します。検索をより柔軟にするために、文字列をカスタム編集に渡す必要があります。その後、「指定」で見つけた最も近い近似値と照合して実行します

designations.setSelection(j);

予想どおり、これにより、目的のアイテムが指定の先頭に設定されます。しかし、コードで強調表示する方法が見つかりません。

デバイスがタッチ モードの場合、選択した項目の強調表示が行われないことはわかっています。したがって、私の検索ボックスの onTextChanged イベントの最後の 4 行は次のとおりです。

        designations.setFocusable(true);            
        designations.setFocusableInTouchMode(true);
        if (match==true)      designations.setSelection(j);
        if (st.length()==0)   designations.setSelection(0);

無駄に。

今、検索ボックスの afterTextChanged(Editable s); にコードはありません。

誰でも私にこれについての手がかりを与えることができますか?

よろしく〜dh

4

2 に答える 2

3

requestFocus() とおそらく requestChildFocus() をチェックしてください

于 2010-03-11T21:15:22.423 に答える
2

実際Viewに選択するように設定してみましたか?

designations.setSelection(j);
designations.getSelectedView().setSelected(true);
于 2010-03-11T20:34:17.053 に答える