0

配列リストの作成

public ArrayList<HashMap<String,Object>> list=new ArrayList<HashMap<String,Object>>();

simpleAddapter を追加して 4 つのフィールドを表示する 今、リスト内の項目を検索したいので、使用しました

search.addTextChangedListener(new TextWatcher() {

    @Override
    public void onTextChanged(CharSequence s, int start, int before, int count) {
        ((SimpleAdapter)getListAdapter()).getFilter().filter(s); 
                        }

    @Override
    public void beforeTextChanged(CharSequence s, int start, int count,
            int after) {
        // TODO Auto-generated method stub

    }

    @Override
    public void afterTextChanged(Editable s) {
        // TODO Auto-generated method stub

    }
});

listView を適切にフィルタリングしますが、リストビュー項目にアクセスしようとすると正しい位置が返されません。つまり、ファイルの後に 2 つの項目が表示されている場合、位置は古いリスト項目と同じです.. onListItemClick から正しいデータを取得する方法は? ?

4

3 に答える 3

0

これは私のために働いた

mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, final View view,
                                    int position, long id) {

                //abrirActividadDetallada(position, id);
                Object MyObject=(Object) parent.getAdapter().getItem(position);
                CustomMethod(MyObject);
            }
        });
于 2015-03-06T18:12:08.707 に答える