From a6845c2e795f0a13e65cf9463e09869c15f8c5c4 Mon Sep 17 00:00:00 2001 From: Synced Synapse Date: Tue, 29 Dec 2015 19:29:20 +0000 Subject: [PATCH] Fix saving fragments in TabsAdapter. Previously it didn't work when the activity was destroyed. --- .../main/java/org/xbmc/kore/utils/TabsAdapter.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/org/xbmc/kore/utils/TabsAdapter.java b/app/src/main/java/org/xbmc/kore/utils/TabsAdapter.java index 418b7a7..ae845c5 100644 --- a/app/src/main/java/org/xbmc/kore/utils/TabsAdapter.java +++ b/app/src/main/java/org/xbmc/kore/utils/TabsAdapter.java @@ -64,16 +64,20 @@ public class TabsAdapter extends FragmentPagerAdapter { return tabInfos.size(); } + @Override + public Fragment getItem(int position) { + TabInfo info = tabInfos.get(position); + return Fragment.instantiate(context, info.fragmentClass.getName(), info.args); + } + /** * Store the created fragments, so that it is possible to get them by position later */ private HashMap createdFragments = new HashMap<>(5); @Override - public Fragment getItem(int position) { - TabInfo info = tabInfos.get(position); - Fragment fragment = Fragment.instantiate(context, info.fragmentClass.getName(), info.args); - + public Object instantiateItem(ViewGroup container, int position) { + Fragment fragment = (Fragment)super.instantiateItem(container, position); createdFragments.put(position, fragment); return fragment; }