簡體   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