ViewFlipper实现图片的轮播,可以在xml中添加图片,但需要在其标签内,也可以用java代码添加。
1、xml:
<ViewFlipper android:id="@+id/flipper" android:layout_width="match_parent" android:layout_height="match_parent" > </ViewFlipper>2、可以先定义一个图片数组。
for (int i = 0; i < res.length; i++) { flipper.addView(getImag(res[i])); } private ImageView getImag(int resId) { // TODO Auto-generated method stub ImageView img = new ImageView(this); img.setImageResource(resId); return img; }图片的自动播放设置(需要两个动画,出和进):
flipper.setInAnimation(this, R.anim.left_in); flipper.setOutAnimation(this, R.anim.right_out); flipper.setFlipInterval(5000); flipper.startFlipping();如果想支持手动滑动图片切换,需要添加一个方法:
public boolean onTouchEvent(MotionEvent event) { // TODO Auto-generated method stub switch (event.getAction()) { case MotionEvent.ACTION_DOWN: startX=event.getX();//float startx获得点下屏幕的坐标x break; case MotionEvent.ACTION_MOVE: break; case MotionEvent.ACTION_UP: if(event.getX()-startX>100) { flipper.setInAnimation(this, R.anim.left_in); flipper.setOutAnimation(this, R.anim.right_out); flipper.showPrevious(); } //left if(startX-event.getX()>100) { flipper.setInAnimation(this, R.anim.right_in); flipper.setOutAnimation(this, R.anim.left_out); flipper.showNext(); } break; default: break; } return super.onTouchEvent(event); }