1.外层Fragment 重写setUserVisibleHint方法
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
//
if (isVisibleToUser) {
Fragment parentFragment = getParentFragment();
if (parentFragment != null && !parentFragment.getUserVisibleHint()) {
waitingShowToUser = true;
super.setUserVisibleHint(false);
return;
}
}
if(getActivity() != null) {
List<Fragment> childFragmentList = getFragmentManager().getFragments();
if (isVisibleToUser) {
// 将所有正等待显示的子Fragment设置为显示状态,并取消等待显示标记
if (childFragmentList != null && childFragmentList.size() > 0) {
for (Fragment childFragment : childFragmentList) {
if (childFragment instanceof BaseFragment) {
if (childFragment instanceof RecommendFragment || childFr