0

我有时需要显示选项卡内容,否则该区域必须填充“非选项卡主机”数据。但是,选项卡应该是可见的,并且当用户单击这些选项卡中的任何一个时,必须隐藏“非选项卡主机”并且必须隐藏适当的选项卡内容变得可见。

它与虚假标签创建有关吗?

给出一个在未选择选项卡的情况下创建 TabHost 的示例。谢谢。

4

2 回答 2

3

我通常做的是,添加一个额外的Tab并使用setVisibility(View.GONE)来隐藏它。这只会对用户隐藏选项卡按钮,并且Tab仍然会在“背景”中存在,您可以使用tabHost.setCurrentTab(0). 我通常也将此选项卡保留为第一个选项卡。

于 2012-07-24T09:35:22.667 回答
3

1.复制你想要标签取消选中的代码

 tabLayout.setSelectedTabIndicatorColor(Color.WHITE);
                    tabLayout.setTabTextColors(Color.BLACK, Color.BLACK);

2.覆盖Tabselected监听器并粘贴以下代码

tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
            @Override`enter code here
            public void onTabSelected(TabLayout.Tab tab) {
                 tabLayout.setSelectedTabIndicatorColor(Color.parseColor("#EB1C23"));
                tabLayout.setTabTextColors(Color.BLACK, Color.RED);
              viewPager.setCurrentItem(position);
}


            @Override
            public void onTabUnselected(TabLayout.Tab tab) {

            }

            @Override
            public void onTabReselected(TabLayout.Tab tab) {
               tabLayout.setSelectedTabIndicatorColor(Color.parseColor("#EB1C23"));
                tabLayout.setTabTextColors(Color.BLACK, Color.RED);
              viewPager.setCurrentItem(position);
            }
        });
于 2017-08-09T08:22:21.543 回答