Android中的手势识别

来源:互联网 发布:编辑录音的软件 编辑:程序博客网 时间:2024/04/29 18:43

android中有一个手势识别类:GestureDetector,其通过通过android.view.GestureDetector.OnGestureListener来触发事件。

package com.xcz1899.test;import android.app.Activity;import android.os.Bundle;import android.view.GestureDetector;import android.view.GestureDetector.OnGestureListener;import android.view.MotionEvent;import android.view.View;import android.view.View.OnTouchListener;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity implements OnTouchListener{GestureDetector mGesture;TextView mTVTest;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mTVTest = (TextView) findViewById(R.id.tv_test);mTVTest.setOnTouchListener(this);}@Overridepublic boolean onTouch(View v, MotionEvent event) {mGesture =new GestureDetector(this, new OnGestureListener() {@Overridepublic boolean onDown(MotionEvent e) {Toast.makeText(getApplicationContext(), "onDown", Toast.LENGTH_SHORT).show();return false;}@Overridepublic void onShowPress(MotionEvent e) {Toast.makeText(getApplicationContext(), "onShowPress", Toast.LENGTH_SHORT).show();}@Overridepublic boolean onSingleTapUp(MotionEvent e) {Toast.makeText(getApplicationContext(), "onSingleTapUp", Toast.LENGTH_SHORT).show();return false;}@Overridepublic boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,float distanceY) {Toast.makeText(getApplicationContext(), "onScroll", Toast.LENGTH_SHORT).show();return false;}@Overridepublic void onLongPress(MotionEvent e) {Toast.makeText(getApplicationContext(), "onLongPress", Toast.LENGTH_SHORT).show();}@Overridepublic boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,float velocityY) {Toast.makeText(getApplicationContext(), "onFling", Toast.LENGTH_SHORT).show();return false;}});return mGesture.onTouchEvent(event);}}


0 0
原创粉丝点击