为了解决viewpager彻底删除fragment问题

    xiaoxiao2021-04-16  25

    为了解决viewpager彻底删除fragment,我们要做的是: 1. 将FragmentPagerAdapter 替换成FragmentStatePagerAdapter ,因为前者只要加载过,fragment中的视图就一直在内存中,在这个过程中无论你怎么刷新,清除都是无用的,直至程序退出; 后者 可以满足我们的需求。 2.我们可以 重写Adapter的方法--getItemPosition() ,让其 返回PagerAdapter.POSITION_NONE 即可; public class SimpleFragmentAdapter extends FragmentStatePagerAdapter { private List<LocalMedia> selectIamges=new ArrayList<>(); public SimpleFragmentAdapter(FragmentManager fm) { super(fm); } public void setSelectIamges(List<LocalMedia> selectIamges) { this.selectIamges = selectIamges; } @Override public Fragment getItem(int position) { return ImagePreviewFragment.getInstance(selectIamges.get(position).getPath(),0); } @Override public int getCount() { return selectIamges.size(); } @Override public int getItemPosition(Object object) { return POSITION_NONE; } }
    转载请注明原文地址: https://ju.6miu.com/read-672547.html

    最新回复(0)