W przypadku tego problemu odbiornik Onpagechange jest najlepszy Ale będzie miał również jeden mały błąd, że nie wykryje czasu rozpoczęcia dla pozycji zerowej Po zmianie strony zacznie wykrywać wybraną pozycję strony ... W tym celu problem znajduję najłatwiejsze rozwiązanie
1. Musisz zachować wybraną wartość pozycji, a następnie jej użyć ....
2. Przypadek 1: Na początku pozycji jest zawsze zero ....
Przypadek 2: Załóżmy, że jeśli ustawisz bieżącą pozycję, to ustawisz ją wartości do utrzymania pozycji 3, a
następnie wykonaj swoje działanie, wykorzystując to w swojej działalności ...
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();
}
});