(3.4)HarmonyOS鸿蒙滑动事件三个动作
生活随笔
收集整理的這篇文章主要介紹了
(3.4)HarmonyOS鸿蒙滑动事件三个动作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
接口名:TouchEventListener
滑動事件里面分為三個動作:按下,移動,抬起
PRIMARY_POINT_DOWN:按下
POINT_MOVE:移動
PRIMARY_POINT_UP:抬起
手機坐標:
手機左上角的點為原點。向右為X軸。向下為Y軸。垂直于屏幕向上為Z軸。
方法返回值:
true表示繼續執行后面的動作
false表示不會繼續執行后面的動作
跟單擊事件類似,滑動事件也有4種寫法,這里采用當前類作為實現類這種寫法,其他寫法可以參見《單擊事件的4種寫法》。
①MainAbilitySlice.java文件
package com.example.yeman.slice;import com.example.yeman.ResourceTable; import ohos.aafwk.ability.AbilitySlice; import ohos.aafwk.content.Intent; import ohos.agp.components.Button; import ohos.agp.components.Component; import ohos.agp.components.DirectionalLayout; import ohos.agp.components.Text; import ohos.multimodalinput.event.TouchEvent;public class MainAbilitySlice extends AbilitySlice implements Component.TouchEventListener{Text txt;int count;@Overridepublic void onStart(Intent intent) {super.onStart(intent);super.setUIContent(ResourceTable.Layout_ability_main);//通過id找到布局對象(其也可以理解是一種組件)DirectionalLayout dl = (DirectionalLayout) findComponentById(ResourceTable.Id_dl);//通過id找到文本框組件txt = (Text) findComponentById(ResourceTable.Id_txt);//給整個布局添加滑動事件,當在整個布局上滑動時,就會不斷調用本類中onTouchEvent方法dl.setTouchEventListener(this);}@Overridepublic void onActive() {super.onActive();}@Overridepublic void onForeground(Intent intent) {super.onForeground(intent);}@Overridepublic boolean onTouchEvent(Component component, TouchEvent touchEvent) {//component表示滑動的哪個組件,布局也是一種組件,實際上這里示例就是在整個布局上進行的。//touchEvent表示動作對象(按下,滑動,抬起)。count++; //可以用來記錄一下該方法被調用次數//獲取當前手指對于屏幕進行的操作(按下,滑動,抬起)int action = touchEvent.getAction(); //1表示按下,2表示抬起,3表示滑動(移動)if (action == TouchEvent.PRIMARY_POINT_DOWN){txt.setText("按下" + count);}else if (action == TouchEvent.PRIMARY_POINT_UP){txt.setText("抬起" + count);}else if (action == TouchEvent.POINT_MOVE){txt.setText("滑動" + count);}return true; //返回值為false的話,調用一次后將不會再調用,即只能作用“按下”這個動作} }②ability_main.xml文件
<?xml version="1.0" encoding="utf-8"?> <DirectionalLayoutohos:id="$+id:dl"xmlns:ohos="http://schemas.huawei.com/res/ohos"ohos:height="match_parent"ohos:width="match_parent"ohos:alignment="center"ohos:orientation="vertical"><Textohos:id="$+id:txt"ohos:height="match_content"ohos:width="match_content"ohos:text="這里是文本框"ohos:text_size="100"/></DirectionalLayout>總結
以上是生活随笔為你收集整理的(3.4)HarmonyOS鸿蒙滑动事件三个动作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 步多多用什么登录
- 下一篇: 计算机二级web题目(8.3)--简单应