0

Simpleadapter に接続された Android ListView があります。一部の要素のテキスト コンテンツ、およびそれらの要素の一部のテキスト タイトルとサブタイトルに応じて、特定の静止画像をリストビューのアイコンとして出力します。

また、edittextview のテキストウォッチャーをセットアップして、フィルター処理と自動検索を行いました。

リストビュー内の検索は正常に実行されます。ただし、textwatcher にはリストビューにテキスト コンテンツ要素 (現在は画像に変換されています) が含まれていることに気付きました。そのため、ユーザーにはタイトル/サブタイトルのみが表示され、画像アイコンの背後にあるテキスト コンテンツは表示されないため、リストビューに誤った行が出力されているようです。

画像アイコンの背後にある元のテキストを除外するリストビューをフィルタリングするより良い方法はありますか?

4

1 に答える 1

1

これが私がやっているコードです(@Luksprogに感謝します):

public void afterTextChanged(Editable s) {
    if(s.length()>0){
        int count = viewListAdapter.getCount();
        if(count > 0){
            hashMapListForListViewcopy.clear();
            for (int i = 0; i < count; i++) {
                Map temp = (Map) viewListAdapter.getItem(i);
                String txtOfferName = temp.get("txtOfferName").toString();
                HashMap<String, String> entitiesHashMap;
                entitiesHashMap = new HashMap<String, String>();
                if (txtOfferName.toLowerCase().contains(s.toString().toLowerCase())) {
                    System.out.println("Found a match!");
                    Log.v("txtOfferName", txtOfferName);
                    Log.v("viewListAdapter.getItem(i)","" + viewListAdapter.getItem(i));
                    entitiesHashMap = (HashMap<String, String>) viewListAdapter.getItem(i);
                    hashMapListForListViewcopy.add(entitiesHashMap);
                }
            }
        }   
        viewListAdaptercopy.notifyDataSetChanged();
    }   
于 2012-11-19T23:34:52.733 に答える