使用ViewPager,切换Fragment时,会发现android的内部机制是:
当你滑到某个Fragment时,如果当前Fragment为空,实例化之,
然后实例化左右两侧距离当前Fragment为1的Fragment(可以自己设置距离)。
这样就有一个问题:
当你在BFragment更新了数据(与AFragment共同使用的数据),然后从BFragment滑到AFragment,而此时因为AFragment一直存在不需要被重建,所以无法更新UI。
这样就需要在BFragment更新数据后,获取AFragment,随之更新AFragment的UI。
在BFragment中获取AFragment的方法:
AFragment fragment = (AFragment) getActivity().getSupportFragmentManager().findFragmentByTag(
"android:switcher:" + R.id.pager + ":0");
fragment.updateFragment();