繁体   English   中英

切换标签时更改ActionBar的文本

[英]Change text of ActionBar when switching tabs

我有一个带有选项卡的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标题?

谢谢。

我猜:

getActionBar().setTitle("Title");

当您切换标签页呼叫时

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

例:

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) {

    }
}

结果:

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM