在某些片段上打开Android应用

时间:2014-09-03 20:14:42

标签: java android android-fragments

启动应用后 - 如何在某个标签片段上启动它?所以,不要只是打开... tab1,而是打开tab3

主要活动的代码。

public class MainActivity extends ActionBarActivity {

    Tab tab1;
    Tab tab2, tab3, tab4, tab5;
    Fragment fragmentTab1 = new FragmentTab1();
    Fragment fragmentTab2 = new FragmentTab2();
    Fragment fragmentTab3 = new FragmentTab3();
    Fragment fragmentTab4 = new FragmentTab4();
    Fragment fragmentTab5 = new FragmentTab5();

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        android.app.ActionBar actionBar = getActionBar();
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

        tab1 = actionBar.newTab().setText("Item 1");
        tab2 = actionBar.newTab().setText("Item 2");
        tab3 = actionBar.newTab().setText("Item 3");
        tab4 = actionBar.newTab().setText("Item 4");
        tab5 = actionBar.newTab().setText("Item 5");

        tab1.setTabListener(new MyTabListener(fragmentTab1));
        tab2.setTabListener(new MyTabListener(fragmentTab2));
        tab3.setTabListener(new MyTabListener(fragmentTab3));
        tab4.setTabListener(new MyTabListener(fragmentTab4));
        tab5.setTabListener(new MyTabListener(fragmentTab5));

        actionBar.addTab(tab1);
        actionBar.addTab(tab2);
        actionBar.addTab(tab3);
        actionBar.addTab(tab4);
        actionBar.addTab(tab5);


    }
}

因此,使用此功能,应用程序会在tab1上启动。

2 个答案:

答案 0 :(得分:3)

您可以在onCreate中执行以下操作:

 @Override
 public void onCreate(Bundle saveInstanceState)
 {
     //do everything you would normally do here
     ....

     viewPager.setCurrentItem(2);
 }

这就是选择tab3打开应用程序所需的全部内容。

答案 1 :(得分:1)

你应该能够做到:

actionBar.addTab(tab1, false);
actionBar.addTab(tab2, false);
actionBar.addTab(tab3, true);
actionBar.addTab(tab4, false);
actionBar.addTab(tab5, false);