TabLayout图标在viewpager刷新后消失

4

大家好,有人可以帮助我吗?

这是我的Android源代码。

private int[] tabIcons = {
        R.drawable.ic_tab_gallery,
        R.drawable.ic_tab_facebook,
        R.drawable.ic_tab_instagram,
        R.drawable.ic_tab_album
};

tabLayout = (TabLayout)findViewById(R.id.tabLayout);
viewPager = (ViewPager)findViewById(R.id.viewpager);


setupViewPager(viewPager);
tabLayout.setupWithViewPager(viewPager);
setupTabIcons();

这是我如何在TabLayout项中放置图标的方法。
private void setupTabIcons() {
    tabLayout.getTabAt(0).setIcon(tabIcons[3]);
    tabLayout.getTabAt(1).setIcon(tabIcons[1]);
    tabLayout.getTabAt(2).setIcon(tabIcons[2]);
    //tabLayout.getTabAt(3).setIcon(tabIcons[3]);
}

但是在刷新我的viewPager之后,所有的tabLayout图标都消失了。

感谢您的帮助。


如何刷新您的ViewPager? - Salauddin Gazi
adapter.notifyDataSetChanged() - Walden
所以你的图标是固定的吗? - Parth Dave
所有我的TabLayout图标都消失了。 - Walden
1个回答

5

我曾经遇到过同样的问题,在viewpager刷新后,我重新为tablayout分配了图标。像这样:

for (int i = 0; i < tabLayout.getTabCount(); i++) {
        tabLayout.getTabAt(i).setIcon(imageResId[i]);
        tabLayout.getTabAt(i).setText(textResId[i]);
    }

另一种方法是重写Viewpager适配器的getPageTitle方法,如此帖子所述。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接