比如,app布局有4个选项卡,在其中一个选项卡中点了按钮,另外打开了一个Activity作了数据处理,当结束此Activity返回到之前的页卡时,需要刷新下此页卡和其他页卡的数据内容,当然可以在onResume()里面完成,不过我感觉比较麻烦,因为返回后,会运行不同页卡的onResume()方法。我用的是懒加载方式,就是进入哪个页卡就加载哪个页卡的数据,想了半天,想到个比较简单的方法,当结束activity返回页卡时,比如需要刷新第一个和第四个页卡,在FragmentActivity里面的onResume里面可以这样做:
mViewPager.setCurrentItem(0);
mViewPager.setCurrentItem(3);
即先切换到第一个页卡,然后立马切换到第四个页卡,这样两个页卡的数据就会各自重新加载一次,而对于用户来说是没有变化的,用户感觉不到页卡的切换。当然,这其中肯定需要一个静态Boolean变量来控制了,只需在需要的时候进行判断即可。