Finally, I found how to update only a specific row view in RecyclerView.
(1) Override onBindViewHolder (Recycler.ViewHolder VH, int position, Payload List) in the adapter
(2) Inside the onBindViewHolder method
if(payloads != null && !payloads.isEmpty() && (payloads.get(0) instanceof customObject)){
(3) To notify about data changes and update the view, you need to call notifyItemChanged (position int, payload Object) . You must pass customObject (the model that stores the data) as the payload object.
adapter.notifyItemChanged(i, obj);
Note. You must disable the ItemAnimator RecyclerView element (it is enabled by default). Otherwise, the payload object will be empty.
recyclerView.setItemAnimator(null);
or
((SimpleItemAnimator)recyclerView.getItemAnimator()).setSupportsChangeAnimations(false);
UPDATE: I used this method recently without disabling ItemAnimator. Therefore, there is no need to disable ItemAnimator. - (recyclerview-v7: 25.4.0)
for further links
source share