Android学习 - android多点触控

在android中多点触控很很好玩的技术,多点触控可以使你所做的游戏可玩性更高。首先先讲讲多点触控的实现方法。

event.getAction()//获取触控动作比如ACTION_DOWN

event.getPointerCount();//获取触控点的数量,比如2则可能是两个手指同时按压屏幕

event.getPointerId(nID);//对于每个触控的点的细节,我们可以通过一个循环执行getPointerId方法获取索引

event.getX(nID);//获取第nID个触控点的x位置

event.getY(nID);//获取第nID个点触控的y位置

event.getPressure(nID);//LCD可以感应出用户的手指压力,当然具体的级别由驱动和物理硬件决定的

event.getDownTime()//按下开始时间

event.getEventTime()//事件结束时间

event.getEventTime()-event.getDownTime());//总共按下时花费时间

Android平台上事件均可以使用MotionEvent对象方式处理,开始触控时会触发ACTION_DOWN,而移动操作时为ACTION_MOVE,最终放开手指时触发ACTION_UP。当然还有用户无规则的操作可能触发ACTION_CANCEL这个动作。

如何通过应用层支持多点触控操作,对于常规的控件触控操作在内部为View的setOnTouchListener()接口,并实现的onTouchEvent()方法来处理。对于onTouchEvent方法的参数MotionEvent,我们可以详细处理其来实现对多点触控。

这里提醒大家多点触控需要LCD驱动和应用软件两个支持才能实现,所以部分比较老的,比如Android 2.1以前或在北美上市的手机可能无法支持多点触控在固件上,由于Apple专利原因在欧洲和亚太地区的Android 2.1以后的新款机型固件均已经在屏幕驱动中支持,同时模拟器也无法实现多点触控的测试。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值