Hallo zusammen,
ich versuche gerade meinen ViewPager auf ViewPager2 zu migrieren. Der Anleitung "Migrate from ViewPager to ViewPager2" bin ich sowit gefolgt. Das sliden funktioniert aber nicht. D.h ich sehe nur das erste Fragment ohne es verschieben zu können.
Code
public class ScheduleRoot2 extends Fragment {
private static final int NUMBER_PAGES = 4;
private ViewPager2 objPager2;
private FragmentStateAdapter objAdapter;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View viewRoot = inflater.inflate(R.layout.frag_scheduler2,container,false);
objPager2 = viewRoot.findViewById(R.id.pager2);
objAdapter = new ScreenSlideAdapter(getParentFragmentManager(),getLifecycle());
objPager2.setAdapter(objAdapter);
return viewRoot;
}
private static class ScreenSlideAdapter extends FragmentStateAdapter {
public ScreenSlideAdapter (FragmentManager fm,Lifecycle ls) {
super(fm,ls);
}
@NonNull
@Override
public Fragment createFragment(int position) {
System.out.println("Pos:" + position);
switch (position) {
case 0:
return new FragmentA();
case 1:
return new FragmentB();
case 2:
return new FragmentC();
case 3:
return new FragmentD();
}
return new FragmentA();
}
@Override
public int getItemCount() {
return NUMBER_PAGES;
}
}
}
Alles anzeigen
Ich habe die Syntax von meinem 'alten' ViewPager übernommen und nur auf den ViewPager2 angepasst. Kann mir da jemand einen Tipp geben?
Vielen Dank