Android中的onTouch()事件如何区分单击事件和滑动事件
private boolean isDown = false;
private float x1 = 0;
private float x2 = 0;
private float y1 = 0;
private float y2 = 0;
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
x1 = event.getX();
y1 = event.getY();
isDown = true;
break;
case MotionEvent.ACTION_UP:
isDown = false;
break;
case MotionEvent.ACTION_MOVE:
x2 = event.getX();
y2 = event.getY();
break;
default:
break;
}
switch (v.getId()) {
case R.id.button_say:
if (event.getAction() == MotionEvent.ACTION_DOWN) {
StartTalk();
StopAudio();
// voiceChangeBtn.setImageResource(R.drawable.ptz_microphone_on1);
} else if (event.getAction() == MotionEvent.ACTION_UP) {
StopTalk();
StartAudio();
// voiceChangeBtn.setImageResource(R.drawable.ptz_microphone_on);
}
break;
case R.id.ipcamclient_whole_view:
dismissAllPopupwindow();
break;
case R.id.camera_flip_viewPager:
if (Math.abs((x1 - x2)) < 25 && Math.abs((y1 - y2)) < 25) {
if (isLandScreem && !isDown) {
dismissAllPopupwindow();
showBottom();
} else if (!isLandScreem && !isDown) {
dismissAllPopupwindow();
}
}
break;
default:
break;
}
return false;
}
更多相关文章
- 代码中设置drawableleft
- android 3.0 隐藏 系统标题栏
- Android开发中activity切换动画的实现
- Android(安卓)学习 笔记_05. 文件下载
- Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
- 技术博客汇总
- android 2.3 wifi (一)
- AndRoid Notification的清空和修改
- Android中的Chronometer