diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPager.java b/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPager.java index 8b86beb76..f53b84517 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/viewpager/ReactViewPager.java @@ -33,7 +33,7 @@ import com.facebook.react.uimanager.events.NativeGestureUtil; private class Adapter extends PagerAdapter { - private List mViews = new ArrayList<>(); + private final List mViews = new ArrayList<>(); void addView(View child, int index) { mViews.add(index, child); @@ -67,6 +67,11 @@ import com.facebook.react.uimanager.events.NativeGestureUtil; return mViews.size(); } + @Override + public int getItemPosition(Object object) { + return mViews.contains(object) ? mViews.indexOf(object) : POSITION_NONE; + } + @Override public Object instantiateItem(ViewGroup container, int position) { View view = mViews.get(position); @@ -76,8 +81,7 @@ import com.facebook.react.uimanager.events.NativeGestureUtil; @Override public void destroyItem(ViewGroup container, int position, Object object) { - View view = mViews.get(position); - container.removeView(view); + container.removeView((View) object); } @Override