@Override
        public void onItemRangeInserted(ObservableList observableList,
                int start, int count) {
            if (mLayoutId == 0) {
                return;
            }
            startTransition(mTarget);
            final int end = start + count;
            LayoutInflater inflater = (LayoutInflater) mTarget.getContext()
                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            for (int i = end - 1; i >= start; i--) {
                Object entry = observableList.get(i);
                ViewDataBinding binding =
                        bindLayout(inflater, mTarget, mLayoutId, entry);
                mTarget.addView(binding.getRoot(), start);
            }
        }
A listener to watch for changes in an Observable list and
animate the change.
DataBindingDataBoundList/app/src/main/java/com/example/android/databoundlist/ListBindingAdapters.java