当我使用 FragmentPagerAdapter 时,我有四个 Fragment ,A,B,C,D。
当它是 A 时,

在简历中,

@Override
public void onResume() {

    super.onResume();
    if (LogUtil.isDebugable()) {
        LogUtil.i(TAG, "isVisible()"+isVisible());
    }
}

它返回 ture ,但在 setUserVisibleHint() 中,
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {

    if (isVisibleToUser) {
        Log.d(TAG, "VisibleToUser");
    }else {
        Log.d(TAG, "unVisibleToUser");
    }
    super.setUserVisibleHint(isVisibleToUser);
}

isVisibleToUser 返回 false...

它们之间有什么区别

最佳答案

我相信您正在使用 View Pager,当然它会发生

因为每当您在 View 寻呼机中的页面上时,它也会加载它旁边的页面。

并且 isVisible() 将返回 true, 如果已添加 fragment ,或将其 View 附加到窗口 isVisibleToUser 将是 true 如果此 fragment 的 UI 当前对用户可见

10-08 09:18