Pour ce problème, Onpagechange listener est le meilleur Mais il aura aussi une petite erreur c'est qu'il ne détectera pas l'heure de début de la position 0.Une fois que vous changerez la page, il commencera à détecter la position de la page sélectionnée ... Pour cela problème je trouve la solution la plus simple
1.Vous devez conserver la valeur de position sélectionnée, puis l'utiliser ....
2. Cas 1: Au début de la position est toujours zéro ....
Cas 2: Supposons que si vous définissez l'élément actuel, cela signifie valeur en position de maintien 3,
puis faites votre action avec l'utilisation de ce maintien dans votre activité ...
Public int maintain=0;
myViewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int i, float v, int i2) {
}
@Override
public void onPageSelected( int i) {
maintain = i;
}
@Override
public void onPageScrollStateChanged(int i) {
}
});
updateButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MyActivity.this, i+" Is Selected "+data.size(), Toast.LENGTH_SHORT).show();
data.set(maintain, "Replaced "+maintain);
myViewPager.getAdapter().notifyDataSetChanged();
}
});