我在工具栏中有许多菜单组的菜单。当我进行搜索时,我会过滤我的recyclerView,然后执行长按,此时我希望展开的SearchView隐藏并显示另一个menuGroup(带有编辑按钮)以对所选项执行操作。
但是当我打电话时
actionView.setIconified(true)
在它发送到我的过滤器请求的源代码中过滤查询“”,因此我丢失了过滤后的结果并获得了未过滤的数据集。
如何隐藏\ show searchView没有这些不必要的内部调用过滤器?谢谢。
答案 0 :(得分:0)
好的,我终于想出了怎么做。要操纵SearchView,不应该调用
actionView.setIconified(true)
或
MenuItemImpl expandedItem = menu.getExpandedItem(); (our menu in toolbar)
expandedItem.collapseActionView();
因为它触发ActionView重置过滤后的数据,因为它意味着“我不再需要搜索”。 相反,您应该使用可见性进行操作 以及下面的方法效果很好。
actionView.setVisibility(View.GONE);
它不会使SearchView执行其他调用,只是从视线中删除扩展的SearchView。您的数据保持不变。