我一个ViewPager里有四个Fragment,然后启动应用后默认显示第一个Fragment,第一个Fragment需要从网络获取数据来设置UI的属性,所以我在第一个Fragment类中写了一个异步操作获取网络数据然后赋属性给UI,这个Fragment中还有一个按钮,点击按钮会再次从网络获取数据然后刷新UI。可是当我打开app的时候,第一个Fragment并没有显示网络数据,只有当我点击刷新按钮的时候,数据才能被显示出来。另外如果我滑动到其它几个Fragment,再滑动回第一个Fragment时,第一个Fragment也会显示网络数据。请问这怎么解决?是不是和Fragment生命周期有关?
会不会是你初始化的时候没有从网络获取数据,即初始化完成后才从网络获取到数据?最简单的办法是,在初始化之后自动调用刷新的函数就好了
异步加载的方法你调用没有?
异步加载的方法你调用没有?
两个问题,你在fragment初始化的时候调用请求网络数据的方法了没有?如果有,获取数据后有没有去更新UI?
一看就是生命周期不熟,多看看,你就知道问题
楼主解决了吗 同求..?
楼主,我也遇到了这个问题
在网络请求到数据之后,需要执行mAdapter.notifyDataSetChanged();数据才会刷新,比如你用的是okhttp,你就要在successd方法里写上这句话
获取完网络数据后要发消息通知更新UI