lor*_*tol 10 android filtering filter android-listview android-adapter
所以在我的listview上设置过滤器之后:
//Log adapter count before filter
listView.getFilter().filter(searchStr)
//Log adapter count after filter
Run Code Online (Sandbox Code Playgroud)
我想要实现的是获得过滤结果的计数.就像之前有10个项目一样,然后我应用过滤器,所以现在只出现5个项目,我想得到那个数"5".我已经尝试在过滤器之前和之后检查适配器计数,但没有运气.如果我应用过滤器,它们显示相同的计数(我正在使用BaseExpandableListAdapter),如果我再次应用过滤器,则数字会从之前改变(但过滤器的前后仍然相同).
以下是我在日志中获得的示例结果:
Before filter the count is 10. After filter the count is 10.
Before filter the count is 8. After filter the count is 8.
Run Code Online (Sandbox Code Playgroud)
我想也许我的适配器不能立即得到反射计数,但在第二个过滤器上,它会改变值,所以我认为过滤后的notifyDataSetChanged会有所作为,但事实并非如此.任何帮助,将不胜感激.
谢谢.
lor*_*tol 23
这就是我设法做到的方式:
myAdapter.getFilter().filter(searchText, new Filter.FilterListener() {
public void onFilterComplete(int count) {
Log.d("log", "result count:" + count);
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2408 次 |
| 最近记录: |