如何使用ActionBar Sherlock设置选项卡的样式

时间:2012-09-04 08:30:15

标签: android actionbarsherlock styling android-image android-tabs

我有ActionBar Sherlock的标签栏菜单,但是我可以改变样式,我想把文字放在图片下面而不是排成一行。

这就是我添加标签和片段的方式

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    ActionBar actionBar = getSupportActionBar();
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

    actionBar.setDisplayShowTitleEnabled(true);

    Tab tab = actionBar.newTab()
                .setText("Resultados sorteos")
                .setTabListener(new ResultadosSorteosFragment())
                .setIcon(R.drawable.resultados_sorteos);

    actionBar.addTab(tab);

    tab = actionBar.newTab()
                .setText("Botes semana")
                .setTabListener(new BotesSemanaFragment())
                .setIcon(R.drawable.botes_semana);

    actionBar.addTab(tab);

    tab = actionBar.newTab()
                .setText("Sorteos Navidad")
                .setTabListener(new SorteosNavidadFragment())
                .setIcon(R.drawable.sorteo_navidad);

    actionBar.addTab(tab);

    tab = actionBar.newTab()
            .setText("Lector Loteria")
            .setTabListener(new LectorLoteriaFragment())
            .setIcon(R.drawable.lector_loteria);

            actionBar.addTab(tab);

    tab = actionBar.newTab()
            .setText("Sorteos Especiales")
            .setTabListener(new SorteosEspecialesFragment())
            .setIcon(R.drawable.sorteos_especiales);

    actionBar.addTab(tab);

提前谢谢大家

1 个答案:

答案 0 :(得分:1)

您是否尝试过Tab类中的方法“setCustomView”。您可以创建所需的布局,然后将其添加到选项卡。因此,假设您使用ImageView创建一个布局,并在其下面创建一个名为“my_stacked_layout”的TextView。

然后您可以执行以下操作:

Tab tab = actionBar.newTab();
tab.setCustomView(R.layout.my_stacked_layout);
tab.setTabListener(new BotesSemanaFragment());
actionBar.addTab(tab);