标签视图不会显示在活动中?

时间:2013-10-15 21:24:30

标签: android

正如标题所说,我正在尝试在我的应用程序中设置此TabView,每次我去运行该活动时,只是一个黑屏? 我查了几个教程但仍然没有运气,这就是我在活动中的所有内容..

protected void onCreate(LayoutInflater inflater, ViewGroup container,
    Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.tabView);
    TabHost tabHost = (TabHost) findViewById(R.id.tabhost);
    tabHost.setup();

    ActionBar bar = getActionBar();
    bar.setBackgroundDrawable(new ColorDrawable(Color.BLACK));
    getActionBar().setDisplayShowTitleEnabled(false);

    TabSpec tabSpec1 = tabHost.newTabSpec("tag1");
    tabSpec1.setContent(R.id.Tab1);
    tabSpec1.setIndicator("Tab1");
    tabHost.addTab(tabSpec1); 

    TabSpec tabSpec2 = tabHost.newTabSpec("tag2");
    tabSpec2.setContent(R.id.Tab2);
    tabSpec2.setIndicator("Tab2");
    tabHost.addTab(tabSpec2);

    TabSpec tabSpec3 = tabHost.newTabSpec("tag3");
    tabSpec3.setContent(R.id.Tab3);
    tabSpec3.setIndicator("Tab3");
    tabHost.addTab(tabSpec3);
}

2 个答案:

答案 0 :(得分:1)

不确定是否要将Tabs添加到活动屏幕或actionBar。但如果它是前者,这样的事情会有所帮助:

public class MainActivity extends TabActivity implements TabHost.TabContentFactory {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        final TabHost tabHost = getTabHost();
        tabHost.addTab(tabHost.newTabSpec("tab1")
                .setIndicator("tab1", getResources().getDrawable(R.drawable.stat_happy))
                .setContent(this));
        tabHost.addTab(tabHost.newTabSpec("tab2")
                .setIndicator("tab2", getResources().getDrawable(R.drawable.stat_neutral))
                .setContent(this));
        tabHost.addTab(tabHost.newTabSpec("tab3")
                .setIndicator("tab3", getResources().getDrawable(R.drawable.stat_sad))
                .setContent(this));

    }

    @Override
    public View createTabContent(String tag) {
        final TextView tv = new TextView(this);
        tv.setText("Content for tab with tag " + tag);
        return tv;
    }
}

答案 1 :(得分:0)

要在操作栏中添加标签,您需要先将导航模式bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);设置到操作栏,然后添加标签。

查看此sample教程。