我有一个问题:在片段中有一个 listView
,我实现了一个 searchView(actionView)来使用搜索视图 onQueryTextChange
事件来过滤 listView
中的列表。这一部分没有问题,一切都运作良好。
adapter = new ListaEmpleadosAdapter(getActivity(), empleadoItems, context);
SearchView searchView = (SearchView) menu.findItem(R.id.menu_buscar).getActionView();
SearchView.OnQueryTextListener queryTextListener = new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String s) {
return false;
}
@Override
public boolean onQueryTextChange(String s) {
try {
adapter.getFilter().filter(s);
adapter.notifyDataSetChanged();
} catch (Exception e) {
System.err.println("ERROR FragmentEmpleado -> " + e.toString());
}
return true;
}
};
当我搜索一些内容并第一次按返回按钮时,软键盘会关闭,这是正常的。当我再次按返回按钮时,searchView 会关闭,这也是正常的,但列表不会返回到初始项目。
我该如何在 searchView 折叠时获取事件(因为 searchView.setOnCloseListener 不起作用),以恢复初始列表项?或者有没有办法通过删除适配器过滤器来恢复初始列表项...
历史:
1.员工列表
2.具有特定过滤器的员工列表(第一次返回按钮按下后,键盘被关闭)
3.关闭 searchView 的员工列表(但第二次返回按钮按下后未恢复原始列表)
非常感谢!