當我從列表中刪除一個項目時,它根本不會從RecyclerView中刪除。從列表中刪除項目不從RecyclerView中刪除它們?
這是我如何刪除(user.getUid()不等於dataSnaphot.getkey()):
for(User user: mFriendList){
if(user.getUid().equals(dataSnapshot.getKey())){
mFriendList.remove(user);
}
}
friendAdapter.notifyDataSetChanged();
我的用戶對象被從列表中刪除,但不是從視圖。當我使用相同的方法添加項目列表,如..
mFriendList.add(user);
friendAdapter.notifyDataSetChanged();
..它不會被添加到列表和視圖以及。爲什麼從列表中刪除不好?
編輯:
設置RecyclerView(片段內):
mRecyclerView = (EmptyRecyclerView) rootView.findViewById(R.id.contactRecyclerView);
mRecyclerView.setHasFixedSize(true);
View myView = rootView.findViewById(R.id.emptyAdapterList);
mRecyclerView.setEmptyView(myView);
mLinearLayoutManager = new LinearLayoutManager(getContext());
mRecyclerView.setLayoutManager(mLinearLayoutManager);
mFriendList = new ArrayList<User>();
friendAdapter = new FriendAdapter(mFriendList, getContext());
mRecyclerView.setAdapter(friendAdapter);
請添加更多詳細代碼(如何設置您的適配器等) –
@oguzhand在編輯下添加了它,請檢查。還有什麼我應該加? – Carlton
您不應該從foreach循環中的集合中刪除項目。它可能會導致未定義的行爲取決於集合。嘗試使用迭代器。 – tommus