android MotionEvent 获取长按压时间长
2015-01-31 10:39
190 查看
思路:
1.记录ACTION_DOWN的aX, aY坐标;
2.在ACTION_MOVE判断是否移动,移动则取消记录时间,没移动就记录;
3.记录时间,按下坐标,移动坐标分别显示在TextView aa, bb, cc;
//声明
//指定
//获取按压时间长
1.记录ACTION_DOWN的aX, aY坐标;
2.在ACTION_MOVE判断是否移动,移动则取消记录时间,没移动就记录;
3.记录时间,按下坐标,移动坐标分别显示在TextView aa, bb, cc;
//声明
public class MainActivity extends ActionBarActivity { private static TextView aa, bb, cc; private float atime; private float aX, aY; private boolean mPressBreak = false;
//指定
aa = (TextView) findViewById(R.id.textView1); bb = (TextView) findViewById(R.id.textView2); cc = (TextView) findViewById(R.id.textView3);
//获取按压时间长
@Override public boolean onTouchEvent(MotionEvent event) { // TODO Auto-generated method stub super.onTouchEvent(event); String str = ""; switch (event.getAction()) { case MotionEvent.ACTION_DOWN: aX = event.getX(); aY = event.getY(); str = String.valueOf(aX) + " , " + String.valueOf(aY); bb.setText(str); mPressBreak = false; break; case MotionEvent.ACTION_MOVE: atime = (event.getEventTime() - event.getDownTime()) / 1000; str = String.valueOf(event.getX()) + " , " + String.valueOf(event.getY()); if ((Math.abs((event.getX() - aX)) > 10) || (Math.abs(event.getY() - aY) > 10)) { atime = 0; mPressBreak = true; } break; } if (!mPressBreak) { aa.setText(String.valueOf((int) (atime))); cc.setText(str); } return true; }
相关文章推荐
- Android开发中MotionEvent坐标获取方法分析
- Android MotionEvent 坐标获取
- Android MotionEvent 坐标获取
- Android MotionEvent 坐标获取
- Android MotionEvent 坐标获取
- Android MotionEvent 获取View坐标信息
- android 中 系统日期时间的获取
- Android Java获取当前时间的总结
- android获取系统时间
- Android获取系统时间的多种方法
- android 获取当前时间
- Android开发——时间获取
- Android获取开机启动总时间
- android获取系统时间
- 实现机制:利用FlexEvent.IDLE空闲事件,然后用mx_internal::idleCounter来获取空闲时间。
- android获取系统时间
- android 日期时间格式转换;软键盘显示消失;获取系统title
- android 中 系统日期时间的获取
- Android中的MotionEvent
- Android 获取当前系统时间 时间之间的转换 判断字符串是否日日期类型