해당 ListView가있는 어댑터를 설정하고 있습니다. 어댑터와 ListView를 필터링하면 카운트를 출력하지만 여전히 동일합니다. 그러나 응용 프로그램에서는 listView가 필터 입력 (이 경우 "Berlin")과 일치하는 항목 만 표시하므로 필터링 된 것 같습니다.ListView 및 어댑터 필터가 업데이트되지 않습니다.
String string_list[] = {"Paris", "London", "Milano", "Madrid", "Berlin", "Moscow", "Washington" };
// Set up ListView and Adapter
myAdapt = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_multiple_choice,string_list);
myListView.setAdapter(myAdapt);
myListView.setItemsCanFocus(false);
myListView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
myListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View itemView, int position,
long arg3) {
// One of my methods
manageFavorites(arg0, itemView, position, arg3, myListView);
}
});
// Debug
myAdapt.getFilter().filter("B");
tv1.setText("myAdapt.getCount() =" + myAdapt.getCount());
myListView.setTextFilterEnabled(true);
myListView.setFilterText("B");
tv2.setText("myListView.getCount() =" + myListView.getCount());
어댑터 또는리스트 뷰에 필터를 호출 할 때, 변수는 파일러에 따라 변경하는 방법이 있는가? 이 경우 문자 B
을 사용하여 myAdapt
및 myListView
을 필터링하므로 Berlin
인 문자와 일치하는 항목 만 myAdapt
및 myListView
에만 표시하고 싶습니다.
내 수업은 Activity
입니다. SOF에서 보았던 것처럼 ListActivity
또는 CustomAdapter
을 사용해야한다고 지적하십시오.
그건 속임수 였어, 고마워! – solalito