网上好多都说用下面这个方式,但是这种方式只限于再viewpager时使用。
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {// TODO Auto-generated method stub
super.setUserVisibleHint(isVisibleToUser);
}
如果使用了多个fragment时是用的show和hint方法呢?
虽然fragment本身也有
@Override
public void onPause() {
super.onPause();
}
@Override
public void onResume() {
// TODO Auto-generated method stub
super.onResume();
}
但是,这两个方法都是要根据当前的fragment的载体Activity的生命周期走,所以还是不能够满足上述需求。
所以正解是使用下面这个方法:
@Override
public void onHiddenChanged(boolean hidden) {
super.onHiddenChanged(hidden);
if (hidden) {
System.out.println("不可见");
} else {
System.out.println("当前可见");
}
}
希望对大家有所帮助。
本文探讨了在使用Android的Fragment时如何有效地控制其可见性状态。针对ViewPager和其他多Fragment场景,介绍了onHiddenChanged方法的使用,该方法能更准确地反映Fragment的可见状态变化。
511

被折叠的 条评论
为什么被折叠?



