繁体   English   中英

RecyclerView复制每个项目

[英]RecyclerView duplicates every item

我在处理recyclerview时遇到问题,当我在打开另一个活动后返回活动时,它会复制我显示的所有项目。 有没有什么办法解决这一问题?

像在列表视图上一样,它只是自动清除列表,然后再次显示它。 你能告诉我如何吗? 谢谢

在OnCreate

int x = 0;
                for(String Name : property_name){
                    JSONObject jsonObject = arrayResponse.getJSONObject(x);
                    property_id[x] = jsonObject.getString("property_id");
                    property_name[x] = jsonObject.getString("property_name");
                    type[x] = jsonObject.getString("property_type");
                    price[x] = jsonObject.getString("price");
                    address[x] = jsonObject.getString("address");

                    ListingNearby listingNearby = new ListingNearby(property_id[x], property_name[x], type[x], price[x], Math.round(distance[x]));
                    x++;
                    list.add(listingNearby);

                }

                recyclerView = (RecyclerView) findViewById(R.id.ln_recycler_view);
                layoutManager = new LinearLayoutManager(this);
                recyclerView.setLayoutManager(layoutManager);
                recyclerView.setHasFixedSize(true);
                adapter = new ListingNearbyAdapter(list);
                recyclerView.setAdapter(adapter);

我想知道在onResume中放什么,以便listview清除列表,然后再次显示它。

在开始循环之前,只需尝试list.clear()即可。 我想您的清单是静态变量。

在您的适配器中覆盖这两种方法:

@Override
public int getItemCount() {
    return reviewModels.size();
}

@Override
public long getItemId(int position) {
    return position;
}

它对我有用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM