Android检测选定的选项卡并更改ActionBar

亚穆基布

嗨,我有一个包含TabBar的ActionBar,在每个选项卡上,我都希望根据选择的选项卡来更改操作栏标题/图标。如何检测我在哪个选项卡上并运行if语句if tab = tab1 then set actionbar title

这是我的活动

         ActionBar actionbar = getActionBar();
         actionbar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
         getActionBar().setTitle("");
         getActionBar().setIcon(R.drawable.ab_logo);
         getActionBar().setBackgroundDrawable(new ColorDrawable(Color.parseColor("#000000")));
         actionbar.setStackedBackgroundDrawable(new ColorDrawable(Color.parseColor("#eeeeee")));


         LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
         View tabView = inflater.inflate(R.layout.tab_3, null);


         ActionBar.Tab Tab1 = actionbar.newTab().setIcon(R.drawable.ic_tab_1);
         ActionBar.Tab Tab2 = actionbar.newTab().setIcon(R.drawable.ic_tab_2);
         ActionBar.Tab Tab3 = actionbar.newTab().setCustomView(tabView);
         ActionBar.Tab Tab4 = actionbar.newTab().setIcon(R.drawable.ic_tab_4);
         ActionBar.Tab Tab5 = actionbar.newTab().setIcon(R.drawable.ic_tab_5);



         Fragment Fragment1 = new Fragment1();
         Fragment Fragment2 = new Fragment2();
         Fragment Fragment3 = new Fragment3();
         Fragment Fragment4 = new Fragment4();
         Fragment Fragment3 = new Fragment5();


         Tab1.setTabListener(new MyTabsListener(Fragment1));
         Tab2.setTabListener(new MyTabsListener(Fragment2));
         Tab3.setTabListener(new MyTabsListener(Fragment3));
         Tab4.setTabListener(new MyTabsListener(Fragment4));
         Tab5.setTabListener(new MyTabsListener(Fragment5));

         actionbar.addTab(Tab1);
         actionbar.addTab(Tab2);
         actionbar.addTab(Tab3);
         actionbar.addTab(Tab4);
         actionbar.addTab(Tab5);

    }


    @Override
    protected void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        outState.putInt("tab", getActionBar().getSelectedNavigationIndex());
    }

}

这是我的TabListener类

public class TabListener implements ActionBar.TabListener {
    public Fragment fragment;
    public Context c;
    public ActionBar actionbar;

    public TabListener(Fragment fragment, Context con) {
        this.fragment = fragment;
        this.c = con;
    }   



    @Override
    public void onTabReselected(Tab tab, FragmentTransaction ft) {


    }

    @Override
    public void onTabSelected(Tab tab, FragmentTransaction ft) {
        ft.replace(R.id.fragment_container, fragment);

    }

    @Override
    public void onTabUnselected(Tab tab, FragmentTransaction ft) {


    }

}
德里亚根

您也可以在您的onTabSelected方法中执行此操作

public void onTabSelected(Tab tab, FragmentTransaction ft) {
    ft.replace(R.id.fragment_container, fragment);

    switch (tab.getPosition()) {
        case 1:
            actionbar.setTitle("new title");
            actionbar.setIcon(iconDrawable);
            break;
        case 2:
            actionbar.setTitle("new title");
            actionbar.setIcon(iconDrawable);
            break;
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Android检测选定的选项卡并更改ActionBar

来自分类Dev

ActionBar选项卡-无需更改页面

来自分类Dev

如何使选定的选项卡更改颜色?

来自分类Dev

如何更改TabControl选定的选项卡

来自分类Dev

检测Materializecss选项卡更改

来自分类Dev

检测仓库中的选项卡更改

来自分类Dev

更改Android ActionBar选项卡文本样式不起作用

来自分类Dev

Android-以编程方式更改ActionBar选项卡为颜色加下划线

来自分类Dev

Android-以编程方式更改ActionBar选项卡为颜色加下划线

来自分类Dev

Android:tabSelectedTextColor不会更改TabLayout中选定选项卡的文本

来自分类Dev

android TabLayout更改选定选项卡图标的颜色,显示暗白色

来自分类Dev

如何使用Android中的代码使用TabLayout更改选定的选项卡文本颜色?

来自分类Dev

android TabLayout更改选定选项卡图标的颜色,显示暗白色

来自分类Dev

在ActionBar.Tab中更改选项卡宽度

来自分类Dev

以编程方式更改ActionBar选项卡的颜色

来自分类Dev

更改每个选项卡中的ActionBar图标

来自分类Dev

更改Shinydashboard tabBox中选定选项卡的颜色

来自分类Dev

以编程方式更改选定的jQuery UI选项卡?

来自分类Dev

如何用代码更改BottomNavigationView的选定选项卡?

来自分类Dev

android中android 3.0中的actionbar选项卡样式

来自分类Dev

onBackPressed 更改 android 中的选项卡

来自分类Dev

android actionbar在xlarge屏幕的选项卡下面

来自分类Dev

检测Firefox加载项内的选项卡URL更改

来自分类Dev

Android:确定片段中的选定操作栏选项卡

来自分类Dev

Android-ViewPager-更改第二个选项卡时,在第一个选项卡上更新UI(滑动检测)

来自分类Dev

CSS选项卡问题与选定的选项卡

来自分类Dev

jQuery选项卡-动态返回选定的选项卡

来自分类Dev

Actionbar选项卡上的PullToRefreshAttacher NullPointerException

来自分类Dev

ActionBar选项卡-空指针异常

Related 相关文章

  1. 1

    Android检测选定的选项卡并更改ActionBar

  2. 2

    ActionBar选项卡-无需更改页面

  3. 3

    如何使选定的选项卡更改颜色?

  4. 4

    如何更改TabControl选定的选项卡

  5. 5

    检测Materializecss选项卡更改

  6. 6

    检测仓库中的选项卡更改

  7. 7

    更改Android ActionBar选项卡文本样式不起作用

  8. 8

    Android-以编程方式更改ActionBar选项卡为颜色加下划线

  9. 9

    Android-以编程方式更改ActionBar选项卡为颜色加下划线

  10. 10

    Android:tabSelectedTextColor不会更改TabLayout中选定选项卡的文本

  11. 11

    android TabLayout更改选定选项卡图标的颜色,显示暗白色

  12. 12

    如何使用Android中的代码使用TabLayout更改选定的选项卡文本颜色?

  13. 13

    android TabLayout更改选定选项卡图标的颜色,显示暗白色

  14. 14

    在ActionBar.Tab中更改选项卡宽度

  15. 15

    以编程方式更改ActionBar选项卡的颜色

  16. 16

    更改每个选项卡中的ActionBar图标

  17. 17

    更改Shinydashboard tabBox中选定选项卡的颜色

  18. 18

    以编程方式更改选定的jQuery UI选项卡?

  19. 19

    如何用代码更改BottomNavigationView的选定选项卡?

  20. 20

    android中android 3.0中的actionbar选项卡样式

  21. 21

    onBackPressed 更改 android 中的选项卡

  22. 22

    android actionbar在xlarge屏幕的选项卡下面

  23. 23

    检测Firefox加载项内的选项卡URL更改

  24. 24

    Android:确定片段中的选定操作栏选项卡

  25. 25

    Android-ViewPager-更改第二个选项卡时,在第一个选项卡上更新UI(滑动检测)

  26. 26

    CSS选项卡问题与选定的选项卡

  27. 27

    jQuery选项卡-动态返回选定的选项卡

  28. 28

    Actionbar选项卡上的PullToRefreshAttacher NullPointerException

  29. 29

    ActionBar选项卡-空指针异常

热门标签

归档