zl程序教程

您现在的位置是:首页 >  其他

当前栏目

HarmonyOS实战—实现双击事件

2023-02-26 10:20:47 时间

1. 双击事件

双击事件和单击事件有些类似,也有四种实现的方法

1.通过id找到组件。
2.给按钮组件设置双击事件。
3.本类实现DoubleClickedListener接口重写。
4.重写onDoubleClick方法

(福利推荐:阿里云、腾讯云、华为云服务器最新限时优惠活动,云服务器1核2G仅88元/年、2核4G仅698元/3年,点击这里立即抢购>>>

2. 实现案例

  • 当鼠标双击按钮后,Text文本内容就会发生变化

HarmonyOS实战—实现双击事件
HarmonyOS实战—实现双击事件

  • 新建项目 ListenerApplication2

HarmonyOS实战—实现双击事件

  • 采用 当前类实现作为实现类 的方式来实现
  • 代码实现:

ability_main.xml

<?xml version="1.0" encoding="utf-8"?> <DirectionalLayout     xmlns:ohos="http://schemas.huawei.com/res/ohos"     ohos:height="match_parent"     ohos:width="match_parent"     ohos:alignment="center"     ohos:orientation="vertical">      <Text         ohos:id="$+id:text1"         ohos:height="match_content"         ohos:width="match_content"         ohos:text="text"         ohos:text_size="50">     </Text>      <Button         ohos:id="$+id:but1"         ohos:height="match_content"         ohos:width="match_content"         ohos:text="点我"         ohos:text_size="100"         ohos:background_element="red">     </Button>  </DirectionalLayout>

MainAbilitySlice

package com.xdr630.listenerapplication2.slice;  import com.xdr630.listenerapplication2.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.Text;  public class MainAbilitySlice extends AbilitySlice implements Component.DoubleClickedListener {     //把text1提为成员变量,不然onDoubleClick方法就访问不到     //初始化默认值     Text text1 = null;      @Override     public void onStart(Intent intent) {         super.onStart(intent);         super.setUIContent(ResourceTable.Layout_ability_main);          // 1.找到文本框组件和按钮组件         text1 = (Text) findComponentById(ResourceTable.Id_text1);         Button but1 = (Button) findComponentById(ResourceTable.Id_but1);          // 2.绑定事件(想到点谁,就给谁绑定事件)         // 当双击了but1按钮之后,就会执行本类中的 onDoubleClick 方法         but1.setDoubleClickedListener(this);     }      @Override     public void onActive() {         super.onActive();     }      @Override     public void onForeground(Intent intent) {         super.onForeground(intent);     }      @Override     public void onDoubleClick(Component component) {         //Component表示点击组件的对象         //简单理解:我点了谁,那么 Component 就表示谁的对象         //这里Component表示的是按钮对象          //点击之后要做的是改变文本框中的内容         text1.setText("双击");     } }
  • 运行:

HarmonyOS实战—实现双击事件

  • 双击后:

HarmonyOS实战—实现双击事件

HarmonyOS实战—实现双击事件


本站部分内容转载自网络,版权属于原作者所有,如有异议请联系QQ153890879修改或删除,谢谢!
转载请注明原文链接:HarmonyOS实战—实现双击事件

你还在原价购买阿里云、腾讯云、华为云、天翼云产品?那就亏大啦!现在申请成为四大品牌云厂商VIP用户,可以3折优惠价购买云服务器等云产品,并且可享四大云服务商产品终身VIP优惠价,还等什么?赶紧点击下面对应链接免费申请VIP客户吧:

1、点击这里立即申请成为腾讯云VIP客户

2、点击这里立即注册成为天翼云VIP客户

3、点击这里立即申请成为华为云VIP客户

4、点击这里立享阿里云产品终身VIP优惠价

喜欢 (0)
[[email protected]]
分享 (0)