【问题标题】:why icons not displayed when i navigate with Tabs?为什么我使用标签导航时不显示图标?
【发布时间】:2017-08-27 09:37:34
【问题描述】:

当我从第一个选项卡移动到第二个选项卡到第三个选项卡时,图标更改正常,但选择器仍位于第二个选项卡 > 我想将图标移动到它的选项卡上。首先有选择器,还有其他的

我用这个代码

public class ElectronicServiceActivity extends AppCompatActivity {
    private Toolbar toolbar;
    private TabLayout tabLayout;
    private ViewPager viewPager;
    ImageView backimage;
    Context mContext;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_electronic_service);
        backimage = (ImageView) findViewById(R.id.back_id);
        backimage.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                onBackPressed();
            }
        });

        toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        mContext=ElectronicServiceActivity.this;
        viewPager = (ViewPager) findViewById(R.id.viewpager);
        setupViewPager(viewPager);

        tabLayout = (TabLayout) findViewById(R.id.tabs);

        tabLayout.setupWithViewPager(viewPager);
        tabLayout.setBackgroundResource(R.drawable.food_tab_selector);

        tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
            @Override
            public void onTabSelected(TabLayout.Tab tab) {
                int postion = tab.getPosition();

                if (postion == 0) {

                   tabLayout.setBackgroundResource(R.drawable.equipment_tab_selector);


                } else if (postion == 1) {
                    tabLayout.setBackgroundResource(R.drawable.drugs_tab_selector);


                } else if (postion == 2) {
                 tabLayout.setBackgroundResource(R.drawable.search_food_selector);


                }
            }

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

            }

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

            }
        });

    }

    private void setupViewPager(ViewPager viewPager) {
        ElectronicServiceDrugs electronicServiceDrugs = new ElectronicServiceDrugs();
        ElectronicServiceEquipment electronicServiceEquipment = new ElectronicServiceEquipment();
        ElectronicServiceFood electronicServiceFood = new ElectronicServiceFood();
        ElectronicServiceActivity.ViewPagerAdapter adapter = new ElectronicServiceActivity.ViewPagerAdapter(getSupportFragmentManager());
        adapter.addFragment(electronicServiceEquipment, "خدمات الاجهزه الطبيه");
        adapter.addFragment(electronicServiceDrugs, "خدمات دوائيه");
        adapter.addFragment(electronicServiceFood, "خدمات غذائيه");
        viewPager.setAdapter(adapter);
        viewPager.setCurrentItem(2);

    }

    class ViewPagerAdapter extends FragmentPagerAdapter {
        private final List<Fragment> mFragmentList = new ArrayList<>();
        private final List<String> mFragmentTitleList = new ArrayList<>();

        public ViewPagerAdapter(FragmentManager manager) {
            super(manager);
        }

        @Override
        public Fragment getItem(int position) {
            return mFragmentList.get(position);
        }

        @Override
        public int getCount() {
            return mFragmentList.size();
        }

        public void addFragment(Fragment fragment, String title) {
            mFragmentList.add(fragment);
            mFragmentTitleList.add(title);
        }

        @Override
        public CharSequence getPageTitle(int position) {
            return mFragmentTitleList.get(position);
        }
    }

}

我想将每个图标移动到它的标签 当标题集中在 .the 图标也显示在

查看照片

【问题讨论】:

  • 图标是指标签指示器?
  • 是标签指示器还是中间有指示器的背景图片?
  • 是的,正如你所说的

标签: android android-tablayout android-tabs android-tabstrip


【解决方案1】:

您可能希望在选项卡布局项上设置图标,而不是在选项卡布局本身上设置背景:

if (position == 0)
  mTabLayout.getTabAt(0).setIcon(R.drawable.your_icon);

【讨论】:

    猜你喜欢
    • 2020-10-01
    • 2019-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-16
    • 2014-11-17
    • 1970-01-01
    相关资源
    最近更新 更多