<!--手势滑动-->
<
ViewFlipper
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/v_file_view"
></
ViewFlipper>
<!--关键代码-->
package zking.com.android_02_xu;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.widget.ImageView;
import android.widget.Toast;
import android.widget.ViewFlipper;
public class MainActivity
extends AppCompatActivity {
private ViewFlipper
viewFlipper;
private int images[]={R.drawable.
dzms1,R.drawable.
dzms2,R.drawable.
dzms3};
private GestureDetector
ge;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.
activity_main);
viewFlipper = (ViewFlipper) findViewById(R.id.
v_file_view);
for (
int i =
0; i <
images.
length; i++) {
ImageView iv=
new ImageView(
this);
iv.setImageResource(
images[i]);
viewFlipper.addView(iv);
}
//实例化手势检测器类
ge =
new GestureDetector(
this,
new GestureDetector.OnGestureListener() {
//按下
@Override
public boolean onDown(MotionEvent e) {
return false;
}
//按下,但是还未抬起
@Override
public void onShowPress(MotionEvent e) {
}
//按下立马抬起
@Override
public boolean onSingleTapUp(MotionEvent e) {
return false;
}
//滚动
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2,
float distanceX,
float distanceY) {
return false;
}
//长按
@Override
public void onLongPress(MotionEvent e) {
}
//拖动
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2,
float velocityX,
float velocityY) {
if(e2.getX()-e1.getX()>
200){
Toast.
makeText(MainActivity.
this,
"右滑,上一张", Toast.
LENGTH_SHORT).show();
//上一张
viewFlipper.showPrevious();
}
if(e1.getX()-e2.getX()>
200){
Toast.
makeText(MainActivity.
this,
"左滑,下一张", Toast.
LENGTH_SHORT).show();
//下一张
viewFlipper.showNext();
}
return false;
}
});
}
@Override
public boolean onTouchEvent(MotionEvent event) {
return ge.onTouchEvent(event);
}
}