首先说明,我们想要的那种在Activity中的onResume,并不是Fragment中的onResume,这么解释,不拗口吧。
分两种情况(纯粹的fragment和fragment+viewpager)
一、纯粹的fragment
重写onHiddenChanged方法
@Override
public void onHiddenChanged(boolean hidden) {
super.onHiddenChanged(hidden);
if (hidden) {
// 隐藏当前的fragment
} else {
// 显示当前的fragment
}
}
重点:第一次加载fragment的时候,这个方法是不调用的,所以,你打算放在onHiddenChanged方法中的逻辑,在onCreateView中也要有一份
二、fragment+viewPager组合
重写setUserVisibleHint方法
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (isVisibleToUser) {
// 显示当前的fragment
} else {
// 隐藏当前的fragment
}
}
网友评论