J'ai une application d'enquête qui est implémentée à l'aide d'un viewpager et d'un arraylist de fragments. Les fragments ont des types de vue différents, certains ont des boutons radio, des boîtes d'entrée. Je veux enregistrer les données entrées dans une variable partagée dans l'activité parente lorsque l'utilisateur navigue d'un fragment à un autre. Lorsque l'utilisateur atteint le dernier fragment je veux afficher le résumé des données. Je pensais enregistrer les données lorsque l'utilisateur navigue d'un fragment à l'autre. Je ne sais pas non plus si c'est la meilleure façon de s'y prendre.Détecter que l'utilisateur balaie le fragment dans un viewpager
List<Question> questions = new SurveyServiceImpl(getApplicationContext()).getSurveyQuestions(1);
ArrayList<Fragment> questionFragments = new ArrayList<>();
questionFragments.add(HomeFragment.newInstance("", ""));
for (int i = 0; i < questions.size(); i++) {
switch (questions.get(i).getQuestionType()) {
case SELECT:
if (questions.get(i).getMaximumOptionsRequired() == 1)
questionFragments.add(QuestionTypeSelect.newInstance("", questions.get(i)));
else
questionFragments.add(QuestionTypeCheckBox.newInstance("", questions.get(i)));
break;
case INPUT:
questionFragments.add(QuestionTypeInput.newInstance("", questions.get(i)));
break;
default:
}
}
questionFragments.add(EndFragment.newInstance("", ""));
final ViewPager pager = (ViewPager) findViewById(R.id.viewPager);
pager.setAdapter(new MyPagerAdapter(getSupportFragmentManager(), questionFragments));