implement workaround for

http://code.google.com/p/android/issues/detail?id=37484
This commit is contained in:
Andrew Dolgov 2013-11-11 13:42:16 +04:00
parent cf5e03f23f
commit 71d0bcea5a
2 changed files with 41 additions and 1 deletions

View File

@ -0,0 +1,39 @@
package android.support.v4.app;
// http://code.google.com/p/android/issues/detail?id=37484
// Thanks for your amazing code quality, Google.
import android.os.Bundle;
import android.view.ViewGroup;
public class ClassloaderWorkaroundFragmentStatePagerAdapter extends
FragmentStatePagerAdapter {
public ClassloaderWorkaroundFragmentStatePagerAdapter(FragmentManager fm) {
super(fm);
// TODO Auto-generated constructor stub
}
@Override
public Fragment getItem(int arg0) {
// TODO Auto-generated method stub
return null;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
Fragment f = (Fragment) super.instantiateItem(container, position);
Bundle savedFragmentState = f.mSavedFragmentState;
if (savedFragmentState != null) {
savedFragmentState.setClassLoader(f.getClass().getClassLoader());
}
return f;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return 0;
}
}

View File

@ -13,6 +13,7 @@ import android.content.SharedPreferences;
import android.os.BadParcelableException;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.support.v4.app.ClassloaderWorkaroundFragmentStatePagerAdapter;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
@ -38,7 +39,7 @@ public class ArticlePager extends Fragment {
private Feed m_feed;
private SharedPreferences m_prefs;
private class PagerAdapter extends FragmentStatePagerAdapter {
private class PagerAdapter extends ClassloaderWorkaroundFragmentStatePagerAdapter {
public PagerAdapter(FragmentManager fm) {
super(fm);