作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在我的项目中使用 AndroidSwipeLayout (https://github.com/daimajia/AndroidSwipeLayout)。一切正常,符合我的要求。
问题是,当我尝试过滤 ListView 时,我无法更新数据集。
有一个 Unresolved 问题 https://github.com/daimajia/AndroidSwipeLayout/issues/258对于我提到的相同问题
谁能帮我解决这个问题
或任何替代库
最佳答案
不太理想的解决方法:替代方法是使用过滤列表重置适配器。
假设您在适配器中有您的列表,维护一个副本以过滤列表中的项目。使用筛选列表重置适配器。
伪代码:
ArrayList<CustomObject> originalList;
ArrayList<CustomObject> filteredList;
filteredList = new ArrayList<>();
filteredList.addAll(originalList);
setAdapter(filteredList); //Sets the adapter with filtered List.
//In your searchView implementation
private void onSearchQuery(String searchString) {
if( searchString == null || searchString.trim().length() == 0 ) {
filteredList.clear();
filteredList.addAll(originalList);
//Since adapter.notifyDataSetChanged() is not working.
setAdapter(filteredList); //Sets the adapter with filtered List.
}
else {
filteredList.clear();
for( CustomObject customObject : originalList ) {
if( customObject.getSearchableField().contains(searchString) ) {
filteredList.add(customObject);
}
}
//Since adapter.notifyDataSetChanged() is not working.
setAdapter(filteredList); //Sets the adapter with filtered List.
}
}
关于android - notifyDataSetChanged() 在 daimajia AndroidSwipeLayout 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35053150/
我正在尝试在我的项目中使用 AndroidSwipeLayout (https://github.com/daimajia/AndroidSwipeLayout)。一切正常,符合我的要求。 问题是,当
我使用了来自“daimajia”的 AndroidSwipeLayout 库 Android Swipe Layout 虽然对于 4.4 Kitkat 以上的版本,它工作正常。滑动布局的后 View
我是一名优秀的程序员,十分优秀!