切换选项卡时更改ActionBar的文本

时间:2013-08-24 18:55:38

标签: java android android-actionbar

我有一个带有标签的ActionBar。

    actionBar = getActionBar();

    // Hide Actionbar Icon
    actionBar.setDisplayShowHomeEnabled(false);
    actionBar.setDisplayShowTitleEnabled(true);
   // Create Actionbar Tabs
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

    // Create first Tab
    tab = actionBar.newTab().setTabListener(new BusinessActivity());
    // Create your own custom icon
//    tab.setIcon(R.drawable.business);
    tab.setText("Business");
    actionBar.addTab(tab);

我的示例中的BusinessActivity类是扩展Fragment。

切换标签时如何更改ActionBar标题?

感谢。

3 个答案:

答案 0 :(得分:0)

我想:

getActionBar().setTitle("Title");

答案 1 :(得分:0)

切换标签时

ActionBar actionBar = getActionBar();
actionBar.setTitle("Your new title");

答案 2 :(得分:0)

示例:

public class Test extends Activity implements ActionBar.TabListener{

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

        getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
        getActionBar().setDisplayShowTitleEnabled(true);

        ActionBar.Tab t1 = getActionBar().newTab().setText("Tab1").setTabListener(this);
        ActionBar.Tab t2 = getActionBar().newTab().setText("Tab2").setTabListener(this);
        ActionBar.Tab t3 = getActionBar().newTab().setText("Tab3").setTabListener(this);

        getActionBar().addTab(t1);
        getActionBar().addTab(t2);
        getActionBar().addTab(t3);

    }

    @Override
    public void onTabSelected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
        getActionBar().setTitle(tab.getText());
    }

    @Override
    public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {

    }

    @Override
    public void onTabReselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {

    }
}

结果:

enter image description here