viewpager中fragment数据更新不能及时显示问题
发布网友
发布时间:2022-05-04 11:46
我来回答
共2个回答
热心网友
时间:2022-04-21 07:40
Mark一下吧,在手机上没心思回答。
————————————————————————
倦怠症发作,还是没有Coding的*,不过受楼下启发我突然想起一种会被人揍的省事方法,理论上可行,就是给内嵌的PagerView设置属性,setOffscreenPageLimit(0),也就是不预加载,这样每次切换页面都要onCreateView了(注意不是onActivityCreate,这里Activity依旧只Create一次)
其实这属于Fragment间的通信问题吧,正常实现方式挺多的,图省事的话就用EventBus,
笨一点的就弄个静态flag,数据变化时就把flag设为true,然后在有列表的Fragment的onResume周期判断,listView,adapter不为null(重要)且flag为true就notifydatasetchanged,然后再把flag改回false。这习惯不好,会被人鄙视不过能达到目的。
换平时要Fragment间及时交互,我通常会在Fragment的构造方法里传接口实例,通过父Activity分配处理,建议你也用这种方式,邪道方式尝试下可以,用多了养成坏习惯就害了自己了……
热心网友
时间:2022-04-21 08:58
百度一下 fragment懒加载。通过重写setUserVisibleHint,判断是否要重新加载fragment