【问题标题】:Avoiding to add an item to recyclerview when it already exists避免将已存在的项目添加到 recyclerview
【发布时间】:2020-06-22 03:21:39
【问题描述】:

如果一个项目已经在我的 recyclerview 中,则不应在 recyclerview 中再次添加它。有什么办法吗?

这里person 是我的Person 类的对象,PhoneNumberContactName 是从EditTexts 接收的字符串值。现在如果用户再次输入相同的电话号码,则不应添加。

 person2 = new Person(ContactName, PhoneNumber, R.drawable.crop);
                                    arrayList2.add(person2);
                                    adapter2.notifyDataSetChanged();

【问题讨论】:

    标签: android-studio arraylist android-recyclerview


    【解决方案1】:

    首先,您必须检查该对象是否已存在于列表中。您可以通过调用列表对象的 .contains 方法进行检查。

    if(!arraylist2.contains(person2){
            arraylist2.add(person2);
            adapter.setData(arraylist2);
        }
    

    现在适配器有一个方法setData(),它采用列表方法并通知适配器数据更改。

      public void setData(List<Person> personsList){
        this.personsList=personsList;
        notifyDataSetChanged();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-11
      • 1970-01-01
      • 2016-12-15
      • 2016-03-25
      相关资源
      最近更新 更多