Skip to content

Instantly share code, notes, and snippets.

@lylwo317
Created September 18, 2014 03:40
Show Gist options
  • Select an option

  • Save lylwo317/c6c85b4de3f0bcbd3961 to your computer and use it in GitHub Desktop.

Select an option

Save lylwo317/c6c85b4de3f0bcbd3961 to your computer and use it in GitHub Desktop.
viewpager 获取 fragment
public class MyPagerAdapter extends FragmentStatePagerAdapter {
SparseArray<Fragment> registeredFragments = new SparseArray<Fragment>();
public MyPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public int getCount() {
return ...;
}
@Override
public Fragment getItem(int position) {
return MyFragment.newInstance(...);
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
Fragment fragment = (Fragment) super.instantiateItem(container, position);
registeredFragments.put(position, fragment);
return fragment;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
registeredFragments.remove(position);
super.destroyItem(container, position, object);
}
public Fragment getRegisteredFragment(int position) {
return registeredFragments.get(position);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment