Android 适配器刷新viewPager后选项卡消失
问题强> 我正在使用带有图标的表格布局 那是我的适配器Android 适配器刷新viewPager后选项卡消失,android,android-fragments,tabs,android-viewpager,adapter,Android,Android Fragments,Tabs,Android Viewpager,Adapter,问题 我正在使用带有图标的表格布局 那是我的适配器 public class ViewPagerIconsAdapter extends FragmentPagerAdapter { private final List<Fragment> mFragmentList = new ArrayList<>(); public ViewPagerIconsAdapter(FragmentManager manager) { super(ma
public class ViewPagerIconsAdapter extends FragmentPagerAdapter {
private final List<Fragment> mFragmentList = new ArrayList<>();
public ViewPagerIconsAdapter(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) {
mFragmentList.add(fragment);
}
@Override
public int getItemPosition(Object object) {
return POSITION_NONE;
}
@Override
public CharSequence getPageTitle(int position) {
return "";
}
}
设置ViewPager方法
adapter = new ViewPagerIconsAdapter(getSupportFragmentManager());
adapter.addFragment(new Fragment1());
adapter.addFragment(new Fragment2());
adapter.addFragment(new Fragment3());
viewPager.setOffscreenPageLimit(3);
viewPager.setAdapter(adapter);
tabLayout.getTabAt(0).setIcon(tabIcons[0]);
tabLayout.getTabAt(1).setIcon(tabIcons[1]);
tabLayout.getTabAt(2).setIcon(tabIcons[2]);
设置选项卡图标方法
adapter = new ViewPagerIconsAdapter(getSupportFragmentManager());
adapter.addFragment(new Fragment1());
adapter.addFragment(new Fragment2());
adapter.addFragment(new Fragment3());
viewPager.setOffscreenPageLimit(3);
viewPager.setAdapter(adapter);
tabLayout.getTabAt(0).setIcon(tabIcons[0]);
tabLayout.getTabAt(1).setIcon(tabIcons[1]);
tabLayout.getTabAt(2).setIcon(tabIcons[2]);
问题是,当我使用notifyDataSetChanged刷新我的viewPager时,所有图标都会消失
adapter.notifyDataSetChanged();
如果你的图标是固定的,有人会有主意吗
试试这个:
tabLayout.setupWithViewPager(viewPager,false) 所以你的图标是固定的,不会被改变?根据上面的代码,我在adapter.notifyDataSetChanged()之后调用我的方法setupTabIcons方法;但没有效果,图标会消失,无法显示;试试这个不,这似乎没有任何作用,我想它通常是在以前设置的?所以不应该再设置了