1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
| public class Test3webkitsActivity extends Activity implements OnGestureListener {
private static final int SWIPE_MIN_DISTANCE = 120;
private static final int SWIPE_MAX_OFF_PATH = 250;
private static final int SWIPE_THRESHOLD_VELOCITY = 200;
private Animation slideLeftIn;
private Animation slideLeftout;
private Animation slideRightIn;
private Animation slideRightout;
WebView webView;
private GestureDetector detector;
private ViewFlipper view;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
/*
* les différentes animations disponibles dans le repertoire anim
*/
slideLeftIn = AnimationUtils.loadAnimation(this, R.anim.slide_leftin);
slideLeftout = AnimationUtils.loadAnimation(this, R.anim.slide_leftout);
slideRightIn = AnimationUtils.loadAnimation(this, R.anim.slide_rightin);
slideRightout = AnimationUtils.loadAnimation(this,
R.anim.slide_rightout);
view = (ViewFlipper) findViewById(R.id.flip);
detector = new GestureDetector(this, this);
}
/*
* onTouchEvent permet de renvoyer au composant GestureDetector creer
* @see android.app.Activity#onTouchEvent(android.view.MotionEvent)
*/
@Override
public boolean onTouchEvent(MotionEvent event) {
return detector.onTouchEvent(event);
}
/*
* onFling permet d'implementer la gestion du tactile selon la position du
* doight
*
* @see android.view.GestureDetector.OnGestureListener#onFling(android.view.
* MotionEvent, android.view.MotionEvent, float, float)
*/
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
try {
if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH)
return false;
// right to left swipe
if (e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE
&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
view.setInAnimation(slideLeftIn);
view.setOutAnimation(slideLeftout);
view.showNext();
} else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE
&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
view.setInAnimation(slideRightIn);
view.setOutAnimation(slideRightout);
view.showPrevious();
}
} catch (Exception e) {
Log.e("Log_tag", "Erreur switch" + e.getMessage());
}
return false;
}
@Override
public boolean onDown(MotionEvent arg0) {
// TODO Auto-generated method stub
return false;
}
@Override
public void onLongPress(MotionEvent arg0) {
}
@Override
public boolean onScroll(MotionEvent arg0, MotionEvent arg1, float arg2,
float arg3) {
// TODO Auto-generated method stub
return false;
}
@Override
public void onShowPress(MotionEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public boolean onSingleTapUp(MotionEvent arg0) {
// TODO Auto-generated method stub
return false;
}
} |
Partager