Ich habe einen Viewpager mit zwei Fragmenten. Ich möchte jedes Fragment durch 3 verschiedene Fragmente ersetzen. Wie kann ich das tun? Kann ich auch die gesamte ArrayList mit der neuen Liste von Fragmenten nach einem Klick im aktuellen Fragment ändern?FragmentTransaction in ViewPager
Hier ist was ich getan habe.
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View v = inflater.inflate(R.layout.fragment_healthy_mode, container, false);
swipeLeft = v.findViewById(R.id.leftSlide);
swipeRight = v.findViewById(R.id.rightSlide);
pageArray = new ArrayList<Fragment>();
pageArray.add(new Female());
pageArray.add(new Male());
healthyModeAdapter = new HealthyModeAdapter(getFragmentManager(), pageArray);
viewPager = (ViewPager) v.findViewById(R.id.healthyModeViewPager);
viewPager.setAdapter(healthyModeAdapter);
// I want to replace female n male fragment with
pageArray.add(new EctoBodyFemale());
pageArray.add(new EndoBodyFemale());
pageArray.add(new MesoBodyFemale());
pageArray.add(new EctoBodyMale());
pageArray.add(new EndoBodyMale());
pageArray.add(new MesoBodyMale());
Als Sie Herr. noch eine Frage, wie kann ich die ganze ArrayListe mit neuer Liste von Fragmenten nach dem Klick im aktuellen Fragment ändern? –
'ViewPager' funktioniert sehr ähnlich wie' RecyclerView' Sie aktualisieren Ihre Liste, die von Ihrem Adapter verwendet wird, und rufen 'notifyDataSetChanged' auf dem Adapter auf –