Галерея Android, как слайдер изображений - PullRequest
2 голосов
/ 26 января 2012

У меня есть список изображений. Я хочу, чтобы пользователь мог видеть изображения, перемещая их влево и вправо. Я знаю, что такое просмотр галереи, но мне нужно что-то наподобие встроенного в Android-приложение галереи, в котором пользователь скользит изображения.

1 Ответ

4 голосов
/ 26 января 2012

Попробуйте использовать Flipper в своем коде ...

     flipper = (ViewFlipper) findViewById(R.id.flipper);

    LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    int layouts[] = new int[]{ R.layout.first, R.layout.second, R.layout.third, R.layout.fourth, 
            R.layout.fifth, R.layout.sixth, R.layout.seventh, R.layout.eighth, R.layout.nineth, R.layout.tenth, 
            R.layout.eleventh, R.layout.twelveth, R.layout.thirteen };
    for (int layout : layouts)
        flipper.addView(inflater.inflate(layout, null));

все слайды описаны в xml ....

     public boolean onTouch(View view, MotionEvent event)
{
    switch (event.getAction())
    {
    case MotionEvent.ACTION_DOWN:
        fromPosition = event.getX();
        break;
    case MotionEvent.ACTION_UP:
        float toPosition = event.getX();
        if (fromPosition > toPosition)
        {
            flipper.setInAnimation(AnimationUtils.loadAnimation(this,R.anim.go_next_in));
            flipper.setOutAnimation(AnimationUtils.loadAnimation(this,R.anim.go_next_out));
            flipper.showNext();
        }
        else if (fromPosition < toPosition)
        {
            flipper.setInAnimation(AnimationUtils.loadAnimation(this,R.anim.go_prev_in));
            flipper.setOutAnimation(AnimationUtils.loadAnimation(this,R.anim.go_prev_out));
            flipper.showPrevious();
        }
    default:
        break;
    }
    return true;
}

скользящий

...