codecamp

鸿蒙OS ManipulationEvent

ManipulationEvent

java.lang.Object

|---ohos.multimodalinput.event.MultimodalEvent

|---|---ohos.multimodalinput.event.ManipulationEvent

public abstract class ManipulationEvent
extends MultimodalEvent

报告操纵事件。

ManipulationEvent 定义并抽象了所有操作事件,例如手指触摸事件。 这样的事件携带包括事件位置和阶段的信息。 一般将事件作为回调的输入来捕获和处理事件。 回调将一个动作分为三个阶段:开始、操作和结束。 例如,对于单指触摸,开始表示手指触摸屏幕,操作表示手指在屏幕上移动,结束表示手指从屏幕上抬起。

Since:

1

嵌套类摘要

从接口 ohos.utils.Sequenceable 继承的嵌套类/接口
Sequenceable.ProducerT

字段摘要

修饰符和类型 字段 描述
static int PHASE_CANCEL 表示操作已被取消。
static int PHASE_COMPLETED 表示动作已经结束。
static int PHASE_MOVE 表示操作正在进行中。
static int PHASE_NONE 表示无效操作。
static int PHASE_START 表示动作已经开始。
从类 ohos.multimodalinput.event.MultimodalEvent 继承的字段
BUILTIN_KEY, DEFAULT_TYPE, highLevelEvent, KEYBOARD, MOUSE, ROTATION, SPEECH, STYLUS, TOUCH_PANEL, UNSUPPORTED_DEVICE, uuid

构造函数摘要

构造函数 描述
ManipulationEvent()

方法总结

修饰符和类型 方法 描述
abstract float getForce(int index) 获取指定索引的手指的触摸压力。
abstract int getPhase() 获取事件的运行阶段。
abstract int getPointerCount() 获取事件中触控或轨迹跟踪的指针数量。
abstract int getPointerId(int index) 获取事件中指针的唯一 ID。
abstract MmiPoint getPointerPosition(int index) 获取事件中触摸控制或轨迹跟踪时指针索引相对于偏移位置的x和y坐标。
abstract MmiPoint getPointerScreenPosition(int index) 获取事件中触摸控制或轨迹跟踪时指针索引相对于屏幕坐标原点的x和y坐标。
abstract float getRadius(int index) 获取指定索引的手指的触摸半径。
abstract long getStartTime() 获取操作开始阶段的时间(以毫秒为单位)。
abstract void setScreenOffset(float offsetX, float offsetY) 设置相对于屏幕的偏移位置。
从类 ohos.multimodalinput.event.MultimodalEvent 继承的方法
getDeviceId, getInputDeviceId, getOccurredTime, getSourceDevice, getUuid, isSameEvent, marshalling, unmarshalling
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
从接口 ohos.utils.Sequenceable 继承的方法
hasFileDescriptor

字段详细信息

PHASE_CANCEL

public static final int PHASE_CANCEL

表示操作已被取消。 一个动作被取消后视为结束。

Since:

1

PHASE_COMPLETED

public static final int PHASE_COMPLETED

表示动作已经结束。

Since:

1

PHASE_MOVE

public static final int PHASE_MOVE

表示操作正在进行中。

Since:

1

PHASE_NONE

public static final int PHASE_NONE

表示无效操作。

Since:

1

PHASE_START

public static final int PHASE_START

表示动作已经开始。

Since:

1

构造函数详细信息

ManipulationEvent

public ManipulationEvent()

方法详情

getStartTime

public abstract long getStartTime()

获取操作开始阶段的时间(以毫秒为单位)。

返回:

返回操作开始阶段的时间(以毫秒为单位)。

Since:

1

getPhase

public abstract int getPhase()

获取事件的运行阶段。

操作阶段可以是 PHASE_NONE、PHASE_START、PHASE_MOVE、PHASE_COMPLETED 或 PHASE_CANCEL。

返回:

返回事件的操作阶段。 返回值可以是 PHASE_NONE、PHASE_START、PHASE_MOVE、PHASE_COMPLETED 或 PHASE_CANCEL。

Since:

1

getPointerPosition

public abstract MmiPoint getPointerPosition(int index)

获取事件中触摸控制或轨迹跟踪时指针索引相对于偏移位置的x和y坐标。

参数:

参数名称 参数描述
index 指示指针索引映射到事件中的指针动作。 取值范围从 0 到 getPointerCount()-1。 对于鼠标和触控笔,仅支持单个指针操作。 获取位置信息后,指针索引设置为0。

返回:

返回指针索引的 x 和 y 坐标。 如果已指定控件的位置,则返回相对于控件的 x 和 y 坐标。 如果尚未指定控件的位置,则返回相对于屏幕的 x 和 y 坐标。

Since:

1

setScreenOffset

public abstract void setScreenOffset(float offsetX, float offsetY)

设置相对于屏幕的偏移位置。

参数:

参数名称 参数描述
offsetX 表示相对于屏幕左上角 x 的偏移量。
offsetY 表示相对于屏幕左上角 y 的偏移量。

Since:

1

getPointerScreenPosition

public abstract MmiPoint getPointerScreenPosition(int index)

获取事件中触摸控制或轨迹跟踪时指针索引相对于屏幕坐标原点的x和y坐标。

参数:

参数名称 参数描述
index 指示指针索引映射到事件中的指针ID。 取值范围从 0 到 getPointerCount()-1。 对于鼠标和触控笔,仅支持单个指针操作。 获取指针 ID 后,指针索引设置为 0。

返回:

返回指针索引相对于屏幕的 x 和 y 坐标。

Since:

1

getPointerCount

public abstract int getPointerCount()

获取事件中触控或轨迹跟踪的指针数量。

返回:

返回事件中用于触摸控制或轨迹跟踪的指针数。

Since:

1

getPointerId

public abstract int getPointerId(int index)

获取事件中指针的唯一 ID。

参数:

参数名称 参数描述
index 指示指针索引映射到事件中的指针ID。 取值范围从 0 到 getPointerCount()-1。 对于鼠标和触控笔,仅支持单个指针操作。 获取指针 ID 后,指针索引设置为 0。

返回:

返回事件中指针的唯一 ID。

Since:

1

getForce

public abstract float getForce(int index)

获取指定索引的手指的触摸压力。

手指的触摸压力一般在0到1.0之间。 根据输入设备的校准,有时可能会生成大于 1 的值。

参数:

参数名称 参数描述
index 指示触摸手指的索引。 取值范围从 0 到 getPointerCount()-1。 可以根据其唯一ID获取当前事件中触摸手指的位置。 对于鼠标和触控笔动作事件,仅支持单个指针动作。 获取压力信息时,索引设置为0。对于鼠标动作事件,左键按下时的触摸压力为1.0,其他情况下为0。

返回:

返回触摸压力。

Since:

1

getRadius

public abstract float getRadius(int index)

获取指定索引的手指的触摸半径。

触摸半径表示手指在屏幕上触摸的区域。

参数:

参数名称 参数描述
index 指示触摸手指的索引。 取值范围从 0 到 getPointerCount()-1。 可以根据其唯一ID获取当前事件中触摸手指的位置。 对于鼠标和触控笔动作事件,仅支持单个指针动作。 获取屏幕大小时,索引设置为0。对于鼠标动作事件,触摸半径有一个固定值0。

返回:

返回具有指定索引的手指的触摸半径。

Since:

1

鸿蒙OS KeyEvent
鸿蒙OS MmiPoint
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

鸿蒙OS 开发

鸿蒙OS 术语

鸿蒙OS Java API参考

鸿蒙OS ohos.aafwk.ability

鸿蒙OS ohos.aafwk.abilityjet.activedata

鸿蒙OS ohos.aafwk.content

鸿蒙OS java.lang

鸿蒙OS java.Util

鸿蒙OS java.Util class

鸿蒙OS ohos.data.dataability

鸿蒙OS ohos.data.dataability class

鸿蒙OS ohos.agp.components

鸿蒙OS ohos.agp.components interface

鸿蒙OS ohos.agp.components class

鸿蒙OS ohos.global.configuration

鸿蒙OS java.io

鸿蒙OS ohos.data.resultset

鸿蒙OS ohos.data.resultset interface

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }