У меня есть 2 списка в 2 разных адаптерах.Первый список отображает категории, второй - имена.Что-то вроде:
List 1
- Dogs
- Cats
List 2
- Pluto (Dogs)
- Oliver (Cats)
- Billo (Cats)
Второй список включает в себя категорию (скрытый просмотр текста в item.xml).Что я хотел бы сделать, так это то, что при нажатии элемента «Dogs
» во втором списке должен отображаться только элемент «Pluto
» или при нажатии «Cats
» во втором списке должно отображаться «Oliver
».и "Billo
".
Я попробовал этот сценарий следующим образом;Первый список с его адаптером
adapter = new ArrayAdapter<String>(getContext(), android.R.layout.simple_list_item_1, android.R.id.text1, categories);
listView.setAdapter(adapter);
, а затем щелкните элемент
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String itemValue = (String) listView.getItemAtPosition(position);
getAdapter().getFilter().filter(itemValue);
}
});
Этот getAdapter().getFilter().filter(itemValue)
должен отфильтровать второй список, но он не работает.Когда я касаюсь одного из элементов, элементы второго списка исчезают.Но, если я попытаюсь таким образом
getAdapter().getFilter().filter("Pluto");
, это сработает.И это фильтрует второй список.Я не могу понять, почему не работает, используя категории