通过按钮等切换活动按钮

时间:2012-05-12 09:50:38

标签: android

我在StartActivity中有以下TapControl:

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


    TabHost tabHost = getTabHost();

    // Tab for A Tap
    TabSpec atapspec = tabHost.newTabSpec("ATap");
    // setting Title and Icon for the Tab
    atapespec.setIndicator("ATap", getResources().getDrawable(R.drawable.state_atap));
    Intent atapIntent = new Intent(this, ATapActivity.class);
    atapspec.setContent(atapIntent);

    // Tab for B Tap
    TabSpec btapspec = tabHost.newTabSpec("BTap");
    btapspec.setIndicator("BTap", getResources().getDrawable(R.drawable.state_btap));
    Intent btapIntent = new Intent(this, BtapActivity.class);
    btapspec.setContent(btapIntent);



    // Adding all TabSpec to TabHost
    tabHost.addTab(atapspec); // Adding a tab
    tabHost.addTab(btapspec); // Adding b tab


}

每个Tap都有自己的活动。 现在我的问题是,如何用按钮切换到下一个Tap-Activity?  我试图只启动Activity,但是Tap控件丢失了。

startActivity(new Intent(this, BTapActivity.class));

我发现它应该是这样的:

setCurrentTabByTag("BTab");

但我不知道如何。

编辑:

当我输入“tabHost.setCurrentTabByTag(”BTap“);”在onCreate方法的末尾,选择了BTap。因此它是正确的命令。但是从另一个Activity我无法访问tabHost。 当我将tabHost设置为全局对象时,应用程序崩溃:

TabHost tabHost = getTabHost();

我在Tab-Activity中尝试过这样的事情:

startActivity StartAct = new startActivity ();
StartAct.setTap("BTap");

此方法位于StartActivity中:

public void setTap(String tap) {

    tabHost.setCurrentTabByTag(tap);
}

我该怎么办?对不起,我是初学者......

1 个答案:

答案 0 :(得分:0)

您可以使用TabHost的setCurrentTab(int index)功能以编程方式打开标签。

相关问题