This Solution work for me :
This code will remove last item in adapter after performing deletion operation in firebase realtime database.
mAcceptedList.removeAt(adapterPosition);
mShortlistProfileAdapter.notifyDataSetChanged()
override fun onItemClicked(
adapterPosition: Int,
mUserListProfile: ArrayList<UserProfile>
) {
mShortlistedProfileVM?.deleteUserProfile(mUserListProfile.get(adapterPosition))
mAcceptedList.removeAt(adapterPosition);
mShortlistProfileAdapter.notifyDataSetChanged()
}
}
- To Prevent item gets duplicated.
Clear your list before adding data into list.
mAcceptedList.clear() <---add this line of code.
val listSize = etrieveDataResponse.userViewedProfile!!.mViewedProfileList.size
val mListUserProfile = retrieveDataResponse.mViewedProfileList
for (i in 0..listSize - 1) {
if (mListUserProfile.get(i).mProfileStatus == true) {
mAcceptedList.add(mListUserProfile.get(i))
}
}
showDataOnAdapter(mAcceptedList)
solved Item gets duplicated in adapter, when we delete or update item from Firebase Realtime Database