使用TabbedView

时间:2012-06-12 00:40:46

标签: android android-layout

我有一个包含3个标签的TabbedView活动。目前,只有第一个选项卡有正确的图标,另外两个是空白。

我的xml文件如下:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/news" android:state_selected="true" />
<item android:drawable="@drawable/score" android:state_selected="true" />
<item android:drawable="@drawable/schedule" android:state_selected="true" />
</selector>

新闻图标就是显示的图标。这是我的标签视图活动。我希望看到第二个标签图标是分数图标,第三个标签是日程表图标:

        //Headlines
    intent = new Intent().setClass(this, HeadlineBoard.class);
    intent.putExtra(Constants.SPORT_NAME_EXTRA, sportsName);
    intent.putExtra(Constants.HEADLINES_FOR_SPORT_EXTRA, headlines);
    spec = tabHost.newTabSpec("news").setIndicator("Headlines",
                      res.getDrawable(R.drawable.hl_aggie))
                  .setContent(intent);
    tabHost.addTab(spec);

    //Scores
    intent = new Intent().setClass(this, ScoreBoard.class);
    intent.putExtra(Constants.SPORT_NAME_EXTRA, sportsName);
    intent.putExtra(Constants.SCORES_FOR_SPORT_EXTRA, scores);
    spec = tabHost.newTabSpec("score").setIndicator("Scores",       
                      res.getDrawable(R.drawable.hl_aggie))
                  .setContent(intent);
    tabHost.addTab(spec);

    //Schedule
    intent = new Intent().setClass(this, ScheduleBoard.class);
    intent.putExtra(Constants.SPORT_NAME_EXTRA, sportsName);
    intent.putExtra(Constants.SCHEDULE_FOR_SPORT_EXTRA, scheduleIn);
    spec = tabHost.newTabSpec("schedule").setIndicator("Schedule",
                      res.getDrawable(R.drawable.hl_aggie))
                  .setContent(intent);
    tabHost.addTab(spec);       
    tabHost.setCurrentTab(0);

1 个答案:

答案 0 :(得分:1)

如果您只想显示所有图标,为什么不分别为每个标签设置所有图标drawable?

TabSpec scoreSpec= tabHost.newTabSpec("score");

scoreSpec.setIndicator("scores", getResources().getDrawable(R.drawable.score));

这是Reference ..

相关问题