如何在不是TabActivity的Activity中创建tabHost

时间:2012-01-02 13:48:00

标签: java android tabs android-tabhost

我在Activty中创建了一个tabHost,每当它到达.addTab(Spec)时就会崩溃。 我在Activity中创建了tab主机:

peopleTabHost = new TabHost(this);

然后我使用一种方法来添加标签(我可以这样做,因为我将peopleTabHost定义为onCreat之外的最终版本)

    private void CreateNewTab(String tagName, String displayedName, Class<?> intentClass)
    {
          Intent intent = new Intent().setClass(this,  intentClass);
          TabHost.TabSpec spec = peopleTabHost.newTabSpec(tagName).setIndicator(displayedName);
          spec.setContent(intent);
          peopleTabHost.addTab(spec);       
    }

由于

2 个答案:

答案 0 :(得分:1)

我是第二个sianis的答案,但我还补充说它可能会崩溃,因为你没有初始化(或至少没有显示)tabhost。

尝试在调用构造函数后立即运行peopleTabHost.setup();

答案 1 :(得分:0)

为什么不使用TabActivity?它是一个扩展Activity的ActivityGroup的类。因此,您可以像使用简单的Activity一样使用TabActivity类的子项,但它具有更多功能。