Fragment 的 onResume()

/**
 * 1.Fragment第一次创建时调用
 * 2.切换程序(如点了Home键)后恢复Fragment可见时调用
 * 3.切换fragment的hide和visible的时候可能不会调用
 */
@Override
public void onResume() {
    super.onResume();
    if (isAdded() && !isHidden()) {//用isVisible此时为false,因为mView.getWindowToken为null
        onVisible();
    }
}

/**
 * 同 onResume()
 */
@Override
public void onPause() {
    if (isVisible()) {
        onHidden();
    }
    super.onPause();
}

/**
* 1.Fragment在程序内隐藏或显示时调用时
* 2.默认fragment创建的时候是可见的,但是不会调用该方法
* 3.调用onResume,onPause的时候却不会调用此方法
* @param hidden
*/
@Override
public void onHiddenChanged(boolean hidden) {
    super.onHiddenChanged(hidden);
    if (!hidden) {//可见时
        onVisible();
    } else {//不可见时
        onHidden();
    }
}

private void onVisible() {
    //todo
}

private void onHidden() {
    //todo
}

参考:

https://blog.csdn.net/u013064618/article/details/77479630

 

你可能感兴趣的:(android)