最新下载
热门教程
- 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);
}
}
相关文章
- 植物大战僵尸杂交版金盏吸金磁能力解析 07-26
- 异梦残响晏景明详细介绍 异梦残响晏景明属性技能 07-26
- 逆战未来怪物血条数值详解 07-26
- 原神6.3奇馈宝箱位置在哪 奇馈宝箱位置大全 07-26
- 逆战未来新手游戏界面设置指南 07-26
- 鹅鸭杀地图及模式解锁问答一览 07-26