您的位置:首页 > 移动开发 > Android开发

android 手势操作

2013-12-25 12:15 260 查看
android应用最便捷的操作就是手势操作,通过滑屏操作在手机上实现各类事件。

今天要用到的就是通过滑屏实现activity之间的切换。

该功能需要OnGestureListener和OnTouchListener共同实现,通过监控触屏和滑屏事件来确定应用的下一步操作。

首先为activity建立监听事件

GestureDetector detector;

detector=new GestureDetector(this,new GestureListener());
RelativeLayout rl =(RelativeLayout)findViewById(R.id.rLayout);
rl.setOnTouchListener(new TouhListener());
rl.setLongClickable(true);


以上代码中的GestureListener和TouhListener需要自行实现

//触摸屏幕监听
class TouhListener implements OnTouchListener{
@Override
public boolean onTouch(View v,MotionEvent event){
return detector.onTouchEvent(event);
}
}
//手势滑动监听
class GestureListener implements OnGestureListener{
@Override
public boolean onFling(MotionEvent e1,MotionEvent e2,float x,float y){
if(e1.getX()-e2.getX()>50){
Intent intent1 = new Intent(MainActivity.this,Numbers.class);
startActivity(intent1);
}
return false;
}

@Override
public boolean onDown(MotionEvent e) {
// TODO Auto-generated method stub
return false;
}

@Override
public void onLongPress(MotionEvent e) {
// TODO Auto-generated method stub

}

@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2,
float distanceX, float distanceY) {
// TODO Auto-generated method stub
return false;
}

@Override
public void onShowPress(MotionEvent e) {
// TODO Auto-generated method stub

}

@Override
public boolean onSingleTapUp(MotionEvent e) {
// TODO Auto-generated method stub
return false;
}
}
需要注意的是GestureListener是实现OnGestureListener的所有接口,测试的时候因为只实现了onFling,结果调试一直出错。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: