java - Viewpager 中的 fragment 仅在从旁边的 fragment 打开时刷新

标签 java android android-layout android-studio android-fragments

所以基本上我目前正在处理 4 个 fragment 。我这里有一些奇怪的情况。当应用程序启动时,它在位置 1 上打开 fragment ,然后如果我通过顶部的选项卡导航到 fragment 2, fragment 2 将会更新,然后如果我从 fragment 2 打开 fragment 3 并从 fragment 3 返回到 fragment 2,它也会更新。但如果我选择打开 fragment 4,然后返回 fragment 2,它将不会刷新。这是我调用刷新 fragment 的方法

@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
    super.setUserVisibleHint(isVisibleToUser);
    if (isVisibleToUser) {
        loadEvents();
    }
    Log.d("TAG", "VISIBLE");
}

在LoadEvents中,很少有recyclerview设置它们的适配器。没什么特别的

最佳答案

我认为这是因为当您调用 fragment 3 并返回 fragment 2 时,您使用 .replace ,而当您转到 fragment 4 时,您使用 .add 并返回 fragment 2 .show

查看以下之间的差异:

  • 添加
  • 替换
  • 显示

https://developer.android.com/reference/android/app/FragmentTransaction.html

关于java - Viewpager 中的 fragment 仅在从旁边的 fragment 打开时刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40257330/

相关文章:

java - 对数螺旋

Android TextView.getLayout() 返回 null

java - 为什么 Java 使用 'equals' 而不是 '==' 来检查对象在 Map 中的存在?

java - 修改 JTable 以适合屏幕

android - 单击任何 EditText 时屏幕向上滚动

java - 如何将 28 天添加到 java for android 中的日期

android - 如何在android中拥有全局菜单?

Android - 如何将后续 View 发送回

java - Java 日志记录、Log4J、Logback 的性能和内存占用

android - 在 Android 媒体播放器中添加字幕轨道