I have a `RecyclerView` with its `RecyclerView.Adapter` and view holder. I am trying to delete an item from list, code as follows inside `onClick()` on delete button in the ViewHolder

```
int position = getAdapterPosition();  
if(position > -1)
{
Place place = placeList.remove(position);
notifyItemRemoved(position);
notifyItemRangeChanged(position, getItemCount());
}

```

Despite removing the view and doing the animation (list also gets affected), the old view (or lower one) still exist or drawn again.
For example, if the list starts with size = 5, then i try to remove index 4, he remove 4, then still draw 5 views.

**EDIT**

If i remove `notifyItemRangeChanged()` then it does that bug only if i do the following

1- click on delete

2- click button very quickly that takes me to new view

3- going back to the list where i can delete

4- start deleting, and bug happens. 1 item still remain even though the `List` size = 0 (getItemCount is called with 0).

If i only call NotifyDataSetChanged(), then it removes item, but view just stays there !!

Any help or suggestion is appreciated.

Thanks.

**EDIT** complete class [LINK](https://drive.google.com/open?id=0B5a7G9ZFaxNCSXpXWDkyWElBZzg)