android在一个零碎的页面中启动一个特定的标签
我有一个扩展FragmentActivity的活动,我使用一个扩展FragmentStatePagerAdapter的自定义FragmentStatePagerAdapter、一个SlidingTableOut和一个pagerView 在某些情况下,我希望我的fragmentActivity从特定的(第三个,如果重要的话…)选项卡开始。 我试过很多建议,但都没有用。当我尝试使用“pager.setCurrentItem(3)”时,问题是从未调用该片段的onCreateView,因此未正确分配所有对象和值 谢谢你的帮助 编辑:添加更多信息 以下是我初始化适配器的方式:android在一个零碎的页面中启动一个特定的标签,android,android-fragments,android-viewpager,android-tabs,fragmentstatepageradapter,Android,Android Fragments,Android Viewpager,Android Tabs,Fragmentstatepageradapter,我有一个扩展FragmentActivity的活动,我使用一个扩展FragmentStatePagerAdapter的自定义FragmentStatePagerAdapter、一个SlidingTableOut和一个pagerView 在某些情况下,我希望我的fragmentActivity从特定的(第三个,如果重要的话…)选项卡开始。 我试过很多建议,但都没有用。当我尝试使用“pager.setCurrentItem(3)”时,问题是从未调用该片段的onCreateView,因此未正确分配所有
List<Fragment> fragments = new Vector<Fragment>();
fragments.add(Fragment.instantiate(this, NewsTab.class.getName()));
fragments.add(Fragment.instantiate(this, PhotosTab.class.getName()));
fragments.add(Fragment.instantiate(this, AboutTab.class.getName()));
fragments.add(Fragment.instantiate(this, NextTab.class.getName()));
adapter = new ProtestViewPagerAdapter(getSupportFragmentManager(),Titles, NumOfTabs, fragments);
“标签”还扩展了“MyBaseTab”,它扩展了android.support.v4.app.Fragment,你的寻呼机是从右到左吗?或者设置setcurrentitem对其他片段有效吗?不是从右到左,setcurrentitem只对0有效,就像在setcurrentitem(0)中一样
public class ProtestViewPagerAdapter extends FragmentStatePagerAdapter {
public final String TAG = "PRTST_V_PGR_ADPTR";
private CharSequence Titles[];
private int NumbOfTabs;
private List<Fragment> fragments;
// Build a Constructor and assign the passed Values to appropriate values in the class
public ProtestViewPagerAdapter(FragmentManager fm, CharSequence mTitles[], int mNumbOfTabs,
List<Fragment> fragments) {
super(fm);
this.fragments = fragments;
this.Titles = mTitles;
this.NumbOfTabs = mNumbOfTabs;
}
//This method return the fragment for the every position in the View Pager
@Override
public Fragment getItem(int position) {
return fragments.get(position);
// switch (position){
// case 0:
// NewsTab news = new NewsTab();
// return news;
// case 1:
// PhotosTab photos = new PhotosTab();
// return photos;
// case 2:
// AboutTab about = new AboutTab();
// return about;
// case 3:
// NextTab next = new NextTab();
// return next;
// default:
// return null;
// }
}
// This method return the titles for the Tabs in the Tab Strip
@Override
public CharSequence getPageTitle(int position) {
return this.Titles[position];
}
// This method return the Number of tabs for the tabs Strip
@Override
public int getCount() {
return this.NumbOfTabs;
}
}
void fragmentBecameVisible();