Вращающийся вид прокрутки

Не могу найти информацию о том, как создать вращающийся ScrollView в Android. Под этим я подразумеваю ScrollView, который перезапускается при достижении последнего элемента.

Я начал реализовывать свой собственный ScrollView, который прокручивается до начала при достижении дна. Но есть еще много угловых случаев, о которых мне нужно позаботиться, чтобы сделать их гладкими. (Пока только потратил на это несколько минут)

public class CardScrollView extends ScrollView {

    public CardScrollView(Context context, AttributeSet attrs,
                                 int defStyle) {
        super(context, attrs, defStyle);
    }

    public CardScrollView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public CardScrollView(Context context) {
        super(context);
    }

    @Override
    protected void onScrollChanged(int l, int t, int oldl, int oldt) {
        View view = (View) getChildAt(getChildCount()-1);
        int diff = (view.getBottom()-(getHeight()+getScrollY()));

        if (diff == 0) {
            scrollTo(0, -300);
        }

        super.onScrollChanged(l, t, oldl, oldt);
    }
}

Я думал, что многие люди пытались сделать это до меня, но могут найти много информации в Google. Может ли кто-нибудь указать мне правильное направление, прежде чем я потрачу дни на разработку своего собственного взгляда?


person nilsi    schedule 03.01.2016    source источник
comment
Не прокрутка, а бесконечная галерея: stackoverflow.com/questions/11289448/. Пожалуйста, потратьте некоторое время, прежде чем спрашивать на SO, если не дни :)   -  person Ankur Aggarwal    schedule 03.01.2016
comment
На самом деле я провожу несколько часов в поисках. Швы, как слово, которое я должен был использовать, это петля, а не вращение.   -  person nilsi    schedule 03.01.2016
comment
Насколько мне известно, циклическую прокрутку было бы сложно создать, если это вообще возможно. Однако вы можете иметь бесконечную сетку (с одним столбцом) внутри прокрутки. Попробуйте это вместо   -  person Ankur Aggarwal    schedule 03.01.2016


Ответы (1)


Оказалось, что ViewPager лучше для моей цели. Я нашел пример кода отсюда.

https://github.com/acbelter/DirectionalCarousel

person nilsi    schedule 10.01.2016