0

我有一个带有标签的 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 类是扩展片段。

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

谢谢。

4

3 回答 3

0

我猜:

getActionBar().setTitle("Title");
于 2013-08-24T19:00:47.590 回答
0

当您切换标签时调用

ActionBar actionBar = getActionBar();
actionBar.setTitle("Your new title");
于 2013-08-24T19:01:45.450 回答
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) {

    }
}

结果:

在此处输入图像描述

于 2013-08-24T19:11:15.567 回答