0

我有一个带有 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);
4

1 回答 1

1

如果您只想显示所有图标,为什么不将所有图标可绘制对象分别设置到每个选项卡?

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

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

这是参考..

于 2012-06-12T01:01:40.140 回答