【问题标题】:Recycler View gets loaded again when switching between fragments在片段之间切换时,Recycler View 再次加载
【发布时间】:2021-08-19 07:04:17
【问题描述】:

所以,我有一个包含三个片段的活动,我正在使用 ViewPager 在片段之间切换。

所以在我的一个片段中,我使用回收器视图来加载我的数据。我正在使用 onCreateView 来初始化我的视图并填充回收器视图。但是这里的问题是,当我在片段之间来回切换时,我的回收站视图项目再次加载。我不想要那个。我希望这些项目只加载一次。

例如。当我在 IMAGES 和 SAVED 选项卡之间来回切换时,回收站视图会在 IMAGES 选项卡中重新加载。(ps。查看图像以更好地理解)

这是我加载回收器视图的片段。

public ImageFragment() {
    // Required empty public constructor
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    statusView = inflater.inflate(R.layout.fragment_image,container,false);
    initViews();
    return statusView;
}

private void initViews() {
    progressBar = statusView.findViewById(R.id.progressBar);
    recyclerView = statusView.findViewById(R.id.statusRecyclerView);
    recyclerView.addItemDecoration(new ListViewItemDecorator(getResources().getDimensionPixelSize(R.dimen.spacing)));
    refreshLayout = statusView.findViewById(R.id.statusSwipeRefreshLayout);
    recyclerView.setHasFixedSize(true);
    adapter = new StatusAdapter(getContext(),arrayList);
    recyclerView.setAdapter(adapter);
    recyclerView.setLayoutManager(new GridLayoutManager(getContext(),2));
    adapter.notifyDataSetChanged();
    recyclerView.scheduleLayoutAnimation();
}

那么有没有办法让这件事发生呢?

【问题讨论】:

    标签: android-studio android-fragments android-recyclerview android-fragmentactivity


    【解决方案1】:

    使用 ViewPager2 创建一个标签栏来解决您的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-19
      相关资源
      最近更新 更多