根据其他列表过滤一个列表android

时间:2018-10-10 09:11:27

标签: java android listview filter

我在2个不同的适配器中有2个列表。第一个列表显示类别,第二个列表显示名称。像这样:

Dogs

第二个列表包括类别(item.xml中的隐藏textview)。我想做的是,在单击项目“ 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"); 应该过滤第二个列表,但是不起作用。当我点击其中一个项目时,第二个列表中的项目就会消失。但是,如果我以这种方式尝试

{{1}}

有效。并且它过滤第二个列表。我不明白为什么无法使用类别

0 个答案:

没有答案