我有带有总线信息列表的 ListView,我想在 Adapter 或 ListView 上应用多重过滤器,我已经在 ListView 上完成了实时搜索过滤器,
这是我的活动:
public class FilterListActivity extends Activity implements TextWatcher {
private static List<Country> countries = Storage.getItems();
private EditText editTextFilter;
private ListView listViewCountries;
private CountryListAdapter adapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
adapter = new CountryListAdapter(this, countries);
editTextFilter = (EditText)findViewById(R.id.editTextFilter);
editTextFilter.addTextChangedListener(this);
listViewCountries = (ListView)findViewById(R.id.listViewCountries);
listViewCountries.setAdapter(adapter);
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
adapter.getFilter().filter(s);
}
@Override
public void afterTextChanged(Editable s) {}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
}
当我在文本视图上搜索时,它的搜索非常好,但我也想用区域和人口过滤 ListView。