package com.michao.gesture;import android.app.Activity;import android.os.Bundle;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;public class mainActivity extends Activity implements OnTouchListener{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
Log.d("jjj", "oncreate");
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
} @Override
public boolean onTouch(View v, MotionEvent event) {
Log.d("jjj", "ontouch");
return false;
}
}结果是只有helloworld,mainactivity。logcat中没i有东西输出,点击屏幕也没有反应。
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;public class mainActivity extends Activity implements OnTouchListener{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
Log.d("jjj", "oncreate");
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
} @Override
public boolean onTouch(View v, MotionEvent event) {
Log.d("jjj", "ontouch");
return false;
}
}结果是只有helloworld,mainactivity。logcat中没i有东西输出,点击屏幕也没有反应。
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
Log.v("jjj", "oncreate");
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
} @Override
public boolean onTouch(View v, MotionEvent event) {
Log.v("jjj", "ontouch");
Toast.makeText(this, "ontouch", Toast.LENGTH_SHORT).show();
return false;
}
public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
Log.v("Himi", "ACTION_DOWN");
} else if (event.getAction() == MotionEvent.ACTION_UP) {
Log.v("Himi", "ACTION_UP");
} else if (event.getAction() == MotionEvent.ACTION_MOVE) {
Log.v("Himi", "ACTION_MOVE");
}
return false;
} @Override
public boolean onDown(MotionEvent e) {
Log.v("Himi", "onDown");
return false;
} @Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
Log.v("Himi", "onFling");
return false;
} @Override
public void onLongPress(MotionEvent e) {
Log.v("Himi", "onLongPress");
} @Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
float distanceY) {
Log.v("Himi", "onScroll");
return false;
} @Override
public void onShowPress(MotionEvent e) {
Log.v("Himi", "onShowPress");
} @Override
public boolean onSingleTapUp(MotionEvent e) {
Log.v("Himi", "onSingleTapUp");
return false;
}
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
Log.i("ACTION_DOWN","-----ACTION_DOWN-----");
break;
case MotionEvent.ACTION_MOVE:
Log.i("ACTION_MOVE","-----ACTION_MOVE-----");
break;
case MotionEvent.ACTION_UP:
Log.i("ACTION_UP","-----ACTION_UP-----");
break; default:
break;
}
return false;
}
六个函数分别是ondown,onfilling,onlongpress,onscroll,onshowpress,onsingletapup.那四个函数分别是ongesture,ongesturecancelled,ongestureended,ongesturestarted.
@Override
public boolean onTouchEvent(MotionEvent event) {
// 获得触摸的坐标
int x = (int) event.getX();
int y = (int) event.getY();
switch (event.getAction()) {
// 触摸屏幕时刻
case MotionEvent.ACTION_DOWN:
UpdateTouchEvent(x, y);
break;
// 触摸并移动时刻
case MotionEvent.ACTION_MOVE:
break;
// 终止触摸时刻
case MotionEvent.ACTION_UP:
break;
}
return super.onTouchEvent(event);
}