关于FragmentPagerAdapter的方法讲解


public Object instantiateItem(View container, int position) {
// TODO Auto-generated method stub
return super.instantiateItem(container, position);
}

@Override
public Object instantiateItem(ViewGroup container, int position) {
// TODO Auto-generated method stub
return super.instantiateItem(container, position);

}

                      这两个方法的第一个参数其实都是FragmentPagerAdapter的载体,比如用Viewpager去setAdapter,那么两个container都是Viewpager,调用这个两个方法可以得到

                      position的Fragment,返回的Object其实就是Fragment.


       

                    private void getCurrentScrollView() {

        int currentItem = mViewPager.getCurrentItem();
         PagerAdapter a = mViewPager.getAdapter();


     if (a instanceof FragmentPagerAdapter) {
    FragmentPagerAdapter fadapter = (FragmentPagerAdapter) a;
     Fragment item = (Fragment) fadapter.instantiateItem(mViewPager,
  currentItem);

          mInnerScrollView = (ViewGroup) (item.getView()
  .findViewById(R.id.id_stickynavlayout_innerscrollview));
} else if (a instanceof FragmentStatePagerAdapter) {
FragmentStatePagerAdapter fsAdapter = (FragmentStatePagerAdapter) a;
Fragment item = (Fragment) fsAdapter.instantiateItem(mViewPager,
currentItem);
mInnerScrollView = (ViewGroup) (item.getView()
.findViewById(R.id.id_stickynavlayout_innerscrollview));
}


}


                     我们可以通过这样的方式来获取Fragment里面布局的控件

          

你可能感兴趣的:(关于FragmentPagerAdapter的方法讲解)