最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Android 中解决Viewpage调用notifyDataSetChanged()时界面无刷新的问题
时间:2022-06-25 23:22:12 编辑:袖梨 来源:一聚教程网
Android 中解决Viewpage调用notifyDataSetChanged()时界面无刷新的问题
问题描述
相信很多做过Viewpager的人肯定遇到过这个问题,这个是bug还是Android就是如此设计的,我们不做讨论。总之,它确实影响我们功能的实现了。
可能不少同学选择为Viewpager重新设置一遍适配器adapter,达到刷新的目的。但是这种方法在大多数情况下,是有问题的。
解决办法
以我们可以尝试着修改适配器的写法,覆盖getItemPosition()方法,当调用notifyDataSetChanged时,让getItemPosition方法人为的返回POSITION_NONE,从而达到强迫viewpager重绘所有item的目的。
具体代码如下:
classSearchAdapterextendsPagerAdapter {
privateintmChildCount =0;
@Override
publicvoidnotifyDataSetChanged() {
mChildCount = getCount();
super.notifyDataSetChanged();
}
@Override
publicintgetItemPosition(Object object) {
if( mChildCount >0) {
mChildCount --;
returnPOSITION_NONE;
}
returnsuper.getItemPosition(object);
}
}
相关文章
- OpenAI企业版数据分析用法怎么接入?3步完成企业数据配置 06-11
- 安全文明施工费如何调整 06-11
- 花间提壶方大厨 - 古风美食剧经典重温 06-11
- ChatGPT企业版设计场景用法:3种办公场景与设置步骤 06-11
- ChatGPT企业版注册登录教程:团队接入3步与5项注意事项 06-11
- OpenAI企业版写作使用方法:6项写作设置检查清单 06-11