【问题标题】:how to reload fragment on adapter class after item delete项目删除后如何在适配器类上重新加载片段
【发布时间】:2017-09-14 02:10:14
【问题描述】:

单击删除数据库中的项目的按钮后,如何从适配器类重新加载片段,我的片段有一个 RecyclerView,它将由我的数据库中的 JSON 数组填充。

因为其中 1 个项目将被删除,所以我希望我的 RecyclerView 刷新它的项目

这是我的代码 CartFragment 和这里是 Adapter 按钮点击的地方。

我也尝试过启动同一个片段

FragmentManager manager = getSupportFragmentManager();
            manager.beginTransaction()
                    .replace(R.id.layout_for_fragment,
                            new CartFragment())
                    .commit();

但是 getSupportFragmentManager();在适配器类中不起作用,或者有一种方法可以在适配器内单击按钮时启动相同的片段。

【问题讨论】:

  • 对片段内的适配器项单击使用回调,然后从片段内更新片段很容易

标签: android android-fragments


【解决方案1】:

在您的 holder.deleteItem.setOnClickListener(new View.OnClickListener() 中调用此方法并传递您要删除的对象

  private void removeItem(CartItem cartItem) {

    int currPosition = cartItems.indexOf(cartItem);
    cartItems.remove(currPosition);
    notifyItemRemoved(currPosition);
 }

【讨论】:

    【解决方案2】:

    仅用于重新加载

    notifyItemRemoved(currPosition);

    【讨论】:

      猜你喜欢
      • 2021-05-27
      • 2020-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多