FragmentPagerAdapter и Fragment

у меня есть

    public class TabAdapter extends FragmentPagerAdapter {
    
        private final Adapter[] resRcv;
    
        public TabAdapter(@NonNull FragmentManager fm, Adapter rcva1, Adapter rcva2, Adapter rcva3) {
            super(fm);
            resRcv = new Adapter[]{rcva1, rcva2, rcva3};
        }
    
        final int[] resId = {R.layout.rustab,R.layout.asstab,R.layout.hebtab};
        @NonNull
        @Override
        public Fragment getItem(int position) {
            return new CustFragment(resId[position],resRcv[position]);
        }
    
        @Override
        public int getCount() {return 3;}
    }

и

public class CustFragment extends Fragment {

    private final RecyclerView.Adapter rcva;
    private final Integer id;

    public CustFragment(Integer id, RecyclerView.Adapter rcva) {
        this.id = id;
        this.rcva = rcva;
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        RecyclerView view = (RecyclerView) inflater.inflate(id, container, false);
        view.setLayoutManager(new LinearLayoutManager(container.getContext()));
        view.setAdapter(rcva);
        return view;
    }
}

это работает хорошо когда я инициализирую. Но когда я пытаюсь установить новые данные почему-то это работает не так как в первый раз. в адаптере не вызывается getItem и сразу срабатывает onCreateView в CustFragment. как это исправить чтобы при повторном исполнении кода все работало как и в первый раз


Ответы (0 шт):