【问题标题】:What's the best way to pass a whole recyclerview to another activity using Intent? [closed]使用 Intent 将整个回收站视图传递给另一个活动的最佳方法是什么? [关闭]
【发布时间】:2019-03-16 15:34:11
【问题描述】:

我在一个活动中的 RecyclerView 由我的自定义对象的 ArrayList 组成。因为这个活动处于编辑模式,所以我想将这个 RecyclerView 的所有内容传递给另一个处于非编辑模式的活动。实现这一目标的最佳方法是什么?

谢谢!

【问题讨论】:

    标签: android android-intent arraylist android-recyclerview custom-object


    【解决方案1】:

    您不会将整个 RecyclerView 对象传递给另一个 Activity。只是传递你的ArrayList<CustomObject> 怎么样?您可以使用 GSON 做到这一点:

    How to pass gson serialised object to Intent in android?

    当然,您可以重复使用相同的 RecyclerView Adapter 类。你只需要在Activities 中分别实例化它。

    【讨论】:

      【解决方案2】:

      您不需要两个活动。您可以通过一项活动来实现您的目标。 您可以在适配器内部使用一些标志,例如 isEditMode。它将用于为特定模式适配接口。 当您需要更改模式时——只需更改isEditMode 字段,然后调用adapter.notifyDataSetChanged()

      注意。您还需要更改适配器的方法onBindViewHolder 以对模式更改做出反应。喜欢:

      @Override
      public void onBindViewHolder(@NonNull K holder, int position) {
          if (isEditMode) {
              // Set up item for edit mode
          } else {
              // Set up item for non-edit mode
          }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-16
        • 1970-01-01
        相关资源
        最近更新 更多