Android标签帮助。应用程序打开时如何将第二个选项卡设置为默认值

时间:2013-04-18 06:02:17

标签: android tabs android-tabhost

我创建了一个包含3个标签的应用。该应用程序工作正常但我希望在应用程序打开时选择并加载第二个选项卡。我该怎么设置呢?

这是我的代码:

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        TabHost tabHost = getTabHost();



        // Tab for Home
        TabSpec homespec = tabHost.newTabSpec("Home");
        // setting Title and Icon for the Tab
        homespec.setIndicator("Home",getResources().getDrawable(R.drawable.icons_home_tab));
        Intent photosIntent = new Intent(this, HomeActivity.class);
        homespec.setContent(photosIntent);

        // Tab for Child
        TabSpec childspec = tabHost.newTabSpec("Child");
        childspec.setIndicator("Child",getResources().getDrawable(R.drawable.icons_child_tab));
        Intent homeIntent = new Intent(this, ChildActivity.class);
        childspec.setContent(homeIntent);

        // Tab for Account
        TabSpec accspec = tabHost.newTabSpec("Account");
        accspec.setIndicator("Account",getResources().getDrawable(R.drawable.icons_account_tab));
        Intent accIntent = new Intent(this, AccountActivity.class);
        accspec.setContent(accIntent);

        // Adding all TabSpec to TabHost
        tabHost.addTab(homespec); // Adding home tab
        tabHost.addTab(childspec); // Adding child tab
        tabHost.addTab(accspec); //Adding account tab
        }

4 个答案:

答案 0 :(得分:13)

在tabHost

中添加标签后,使用此方法设置当前标签
tabHost.setCurrentTab(1);  // here pass the tab index its starting from 0

答案 1 :(得分:3)

在你的onCreate中使用tabHost.setCurrentTab(1);

答案 2 :(得分:1)

MGLMapView

重写OnResume()并将tabHost的CurrentTab属性分配给所需选项卡的索引。

答案 3 :(得分:0)

如果有碎片,会有一些困难。破解是为了延迟选项卡的选择。参见 code in this answer