@Override
    @CallSuper
    public DataBoundViewHolder<T> onCreateViewHolder(ViewGroup parent, int viewType) {
        DataBoundViewHolder<T> vh = DataBoundViewHolder.create(parent, viewType);
        vh.binding.addOnRebindCallback(mOnRebindCallback);
        return vh;
    }
This is used to block items from updating themselves. RecyclerView wants to know when an
item is invalidated and it prefers to refresh it via onRebind. It also helps with performance
since data binding will not update views that are not changed.
DataBindingDataBoundRecyclerView/app/src/main/java/com/example/android/databoundrecyclerview/BaseDataBoundAdapter.java