禁用动作条选项卡指示器编程指示器、选项卡、动作

2023-09-13 23:38:38 作者:驴驴友阿

是否有可能使用编程/ Java的code禁用选项卡指示器? 这是我如何设置等选项卡属性:

Is it possible to disable the tab indicator using programmatically/ Java code ? This is how I am setting other tab properties :

actionBar = getSupportActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
actionBar.setHomeButtonEnabled(false);
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setStackedBackgroundDrawable(new ColorDrawable(Color.parseColor("#FFFFFF")));    

ActionBar.TabListener 方法:

@Override
    public void onTabSelected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
        try {
            if (tab.getPosition() == 4) {
                listFlyout = null;
                pwindo = null;
                items.clear();
                addFlyout();
            } else if (tab.getPosition() == 0) {
                tab.getIcon().setColorFilter(Color.parseColor("#10A595"), PorterDuff.Mode.SRC_IN);
                selectedTabIndex = tab.getPosition();
            } else if (tab.getPosition() == 1) {                 tab.getIcon().setColorFilter(Color.parseColor("#F25252"), PorterDuff.Mode.SRC_IN);
                selectedTabIndex = tab.getPosition();
            } else if (tab.getPosition() == 2) {
                tab.getIcon().setColorFilter(Color.DKGRAY, PorterDuff.Mode.SRC_IN);
                selectedTabIndex = tab.getPosition();
            } else if (tab.getPosition() == 3) {
                tab.getIcon().setColorFilter(Color.DKGRAY, PorterDuff.Mode.SRC_IN);
                selectedTabIndex = tab.getPosition();
                }
            } catch (Exception ex) {
                ex.printStackTrace();
            }
    }

    @Override
    public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
        tab.getIcon().setColorFilter(Color.GRAY, PorterDuff.Mode.SRC_IN);
    }

    @Override
    public void onTabReselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) {
        if (tab.getPosition() == 4) {
            listFlyout = null;
            pwindo = null;
            items.clear();
            addFlyout();
        }
    }

但我得到的绿色我不希望选项卡指示器。

But I am getting green tab indicator which I don't want.

推荐答案

应用样式作为回答here禁用该指标也是如此。一种解决方案固定两个问题对我来说:)

Applying the style as answered here disabled the indicator as well. One solution fixed two issues for me :)