Неправильная анимация при переходе к 1-му элементу в бесконечном пейджере с автопрокруткой - PullRequest
0 голосов
/ 09 марта 2019

Мне нужно создать пейджер с бесконечной автоматической прокруткой. Также мне нужно показать индикатор страницы под пейджером просмотра, который должен отвечать согласно событиям прокрутки. В настоящее время я применил следующую логику для бесконечной автоматической прокрутки:

public void setupAutoPager(final int size) {
        final Handler handler = new Handler();

        final Runnable update = new Runnable() {
            public void run() {
                promotionViewPager.setCurrentItem(currentPage);
                if (currentPage >= size - 1) {
                    currentPage = 0;
                } else {
                    ++currentPage;
                }
            }
        };

        Timer timer = new Timer();
        timer.schedule(new TimerTask() {

            @Override
            public void run() {
                handler.post(update);
            }
        }, 500, 2500);
    }

Проблема: Когда 1-й элемент снова появляется из последнего элемента при автоматической прокрутке, анимация пейджера просмотра идет в обратном направлении, тогда как при автоматической прокрутке с 1-го по 2-й элемент анимация идет в направлении вперед. Я хочу, чтобы анимация всегда была в прямом направлении. Обратная анимация происходит, когда я устанавливаю текущий элемент пейджера представления в положение 0, когда он достигает конца. Он прекрасно работает в большинстве приложений, как в Amazon, как это реализовать.

...