Android:如何创建MotionEvent?

2024-05-01

MotionEvent没有获取构造函数,我想在单元测试中手动创建MotionEvent,那么如何获取它?谢谢。


您应该使用静态之一obtain的方法MotionEvent类来创建一个新事件。

最简单的方法(除了从现有事件包装新事件之外)是:

static public MotionEvent obtain(long downTime, long eventTime, int action,
        float x, float y, int metaState) {

API Docs:

创建一个新的MotionEvent,填写 基本运动值的子集。 此处未指定的是:设备 id(始终为 0)、压力和尺寸 (始终为 1),x 和 y 精度(始终 1)和edgeFlags(始终为0)。

参数:

  • downTime发生时的时间(以毫秒为单位) 用户最初按下按钮开始 位置事件流。这 必须从获得 SystemClock.uptimeMillis()。
  • eventTime的时间(以毫秒为单位) 生成了这个特定事件。 这必须从SystemClock.uptimeMillis().
  • action行动的种类是 执行——其中之一ACTION_DOWN, ACTION_MOVE, ACTION_UP, or ACTION_CANCEL.
  • x该事件的 X 坐标。
  • y该事件的 Y 坐标。
  • metaState任何元/的状态 有效的修改键 事件何时生成。

API 文档链接 http://developer.android.com/reference/android/view/MotionEvent.html#obtain(long,%20long,%20int,%20float,%20float,%20int)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android:如何创建MotionEvent? 的相关文章

随机推荐