изображение как слайд-шоу - PullRequest
0 голосов
/ 21 октября 2011

Привет, ребята. Я хочу использовать ImageView в качестве слайд-шоу, которое касается вас в правой части экрана, отображает следующее изображение, а если касание слева, показывает предыдущее изображение, Я уже пытался реализовать эту функцию, но я не получил ответа от ImageView, глядя на logcat, я понял, что он не отправляет TouchEvent.

public class Prova4Activity extends Activity implements OnTouchListener {
/** Called when the activity is first created. */
ImageView image;
Bitmap trash = loadImageFromUrl("http://www.televideo.rai.it/televideo/pub/tt4web/   Nazionale/16_9_page-100.6.png");
ImageView imgpag;
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.EDGE_RIGHT){
    trash.recycle();
     trash = null;
     trash = loadImageFromUrl("http://www.televideo.rai.it/televideo/pub/tt4web/Nazionale/16_9_page-100.6.png");
     image.setImageBitmap(trash);

     }else if(event.getAction() == MotionEvent.EDGE_LEFT){
         trash.recycle();
         trash = null;
         trash = loadImageFromUrl("http://www.televideo.rai.it/televideo/pub/tt4web/  Nazionale/16_9_page-100.5.png");
         imgpag.setImageBitmap(trash);

     }
imgpag.setScaleType(ScaleType.FIT_XY);

return true;
}
@Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    imgpag = (ImageView)findViewById (R.id.imgpag); 
    imgpag.setImageBitmap(trash);
    imgpag.setOnTouchListener(this);

    }
}

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

1 Ответ

0 голосов
/ 21 октября 2011

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

Установите две кнопки на экране - одну в правом углу и одну в левом углу.(Если вы показываете полноэкранный режим ImageView, то лучше использовать FrameLayout - убедитесь, что кнопки расположены спереди). Установите свойства кнопок, например

<Button android:id="@+id/button1" android:layout_width="70dp" android:layout_height="40dp" android:background="@null"/>

.invisible

Затем просто добавьте свою логику prev и next на OnClickListeners этих кнопок

Надеюсь, это поможет вам

...