举报投诉联系我们 手机版 热门标签 鳄鱼CMS
您的位置:鳄鱼CMS > 鸿蒙os进展 鸿蒙OS 事件

鸿蒙os进展 鸿蒙OS 事件

2023-04-26 16:31 鸿蒙OS开发文档

鸿蒙os进展 鸿蒙OS 事件

鸿蒙os进展

鸿蒙操作系统(HarmonyOS)是华为技术有限公司开发的一款新型操作系统,它是一个基于微内核的多场景、多终端的分布式操作系统。它旨在为手机、平板电脑、可穿戴设备、汽车娱乐、家庭娱乐中心以及物联网设备提供一体化的连接体验。

2019年8月9日,华为正式发布了鸿蒙OS,并表示将在2020年底前实现全球覆盖。2020年1月,华为正式向全球发布了鸿蒙OS 2.0 Beta版本,该版本已在华为Mate 30 Pro上进行测试。2020年4月10日,华为正式向全球发布了鸿蒙OS 2.0正式版。

2020年6月2日,华为正式向全球发布了鸿蒙OS 2.1 Beta版本,该版本已在华为P40 Pro上进行测试。2020年7月31日,华为正式向全球发布了鸿蒙OS 2.1正式版。

2020年9月10日,华为正式向全球发布了鸿蒙OS 3.0 Beta版本,该版本已在华为Mate 40 Pro上进行测试。2020年12月16日,华为正式向全球发布了鸿蒙OS 3.0正式版。

目前已实现的功能包括: 
• 支持多样化的应用生态 
• 支持多样化的UI/UX 
• 支持多样化的应用分发 
• 支持多样化的数字内容 
• 支持多样化的数字生态 
• 支持多样化的AI能力 
• 支持多样化的安全保障 
• 支持多样化的物联网能力 
• 支持多样化的5G能力 

鸿蒙OS 事件

事件主要包括手势事件和按键事件。手势事件主要用于智能穿戴等具有触摸屏的设备,按键事件主要用于智慧屏设备。

手势事件

手势表示由单个或多个事件识别的语义动作(例如:点击、拖动和长按)。一个完整的手势也可能由多个事件组成,对应手势的生命周期。JS UI 框架支持的手势事件有:

触摸

  • touchstart:手指触摸动作开始。
  • touchmove:手指触摸后移动。
  • touchcancel:手指触摸动作被打断,如来电提醒、弹窗。
  • touchend:手指触摸动作结束。

点击

click:用户快速轻敲屏幕。

长按

longpress:用户在相同位置长时间保持与屏幕接触。

具体的使用示例如下:

<!-- xxx.hml -->
<div class="container">
  <div class="text-container" onclick="click">
    <text class="text-style">{{onclick}}</text>
  </div>
  <div class="text-container" ontouchstart="touchStart">
    <text class="text-style">{{touchStart}}</text>
  </div>
  <div class="text-container" ontouchmove="touchMove">
    <text class="text-style">{{touchMove}}</text>
  </div>
  <div class="text-container" ontouchend="touchEnd">
    <text class="text-style">{{touchEnd}}</text>
  </div>
  <div class="text-container" ontouchcancel="touchCancel">
    <text class="text-style">{{touchCancel}}</text>
  </div>
  <div class="text-container" onlongpress="longPress">
    <text class="text-style">{{onLongPress}}</text>
  </div>
</div>


.container {
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.text-container {
  padding-top: 10px;
  flex-direction: column;
}
.text-style {
  padding-top: 20px;
  padding-left: 100px;
  width: 750px;
  height: 100px;
  text-align: center;
  font-size: 50px;
  color: #ffffff;
  background-color: #09ba07;
}

// xxx.js
export default {
  data: {
    textData: "",
    touchStart: "touchstart",
    touchMove: "touchmove",
    touchEnd: "touchend",
    touchCancel: "touchcancel",
    onClick: "onclick",
    onLongPress: "onlongpress",
  },
  onInit() {
    this.textData = "initdata";
  },
  onReady: function () {},
  onShow: function () {},
  onHide: function () {},
  onDestroy: function () {},
  touchCancel: function (event) {
    this.touchCancel = "canceled";    
  },
  touchEnd: function(event) {
    this.touchEnd = "ended";
  },
  touchMove: function(event) {
    this.touchMove = "moved";
  }, 
  touchStart: function(event) {
    this.touchStart = "touched";
  },
  longPress: function() {
    this.onLongPress = "longpressed";
  },
  click: function() {
    this.onClick = "clicked";
  },
}

按键事件

按键事件是智慧屏上特有的手势事件,当用户操作遥控器按键时触发。用户点击一个遥控器按键,通常会触发两次 key 事件:先触发 action 为 0,再触发 action 为 1,即先触发按下事件,再触发抬起事件。action 为 2 的场景比较少见,一般为用户按下按键且不松开,此时 repeatCount 将返回次数。每个物理按键对应各自的按键值(keycode)以实现不同的功能,常用的按键值请参考组件通用事件。具体的使用示例如下:

<!-- xxx.hml -->
<div class="card-box">
  <div class="content-box">
    <text class="content-text" onkey="keyUp" onfocus="focusUp" onblur="blurUp">{{up}}</text>
  </div>
  <div class="content-box">
    <text class="content-text" onkey="keyDown" onfocus="focusDown" onblur="blurDown">{{down}}</text>
  </div>
</div>


.card-box {
  flex-direction: column;
  justify-content: center;
}
.content-box {
  align-items: center;
  height: 200px;
  flex-direction: column;
  margin-left: 200px;
  margin-right: 200px;
}
.content-text {
  font-size: 40px;
  text-align: center;
}

// xxx.js
export default {
  data: {
    up: "up",
    down: "down",
  },
  focusUp: function() {
    this.up = "up focused";
  },
  blurUp: function() {
    this.up = "up";
  },
  keyUp: function() {
    this.up = "up keyed";
  },
  focusDown: function() {
    this.down = "down focused";
  },
  blurDown: function() {
    this.down = "down";
  },
  keyDown: function() {
    this.down = "down keyed";
  },
}

按键事件通过获焦事件向下分发,因此示例中使用了 focus 事件和 blur 事件明确当前焦点的位置。点按上下键选中 up 或 down 按键,即相应的 focused 状态,失去焦点的按键恢复正常的 up 或 down 按键文本。按确认键后该按键变为 keyed 状态。

阅读全文
以上是鳄鱼CMS为你收集整理的鸿蒙os进展 鸿蒙OS 事件全部内容。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
相关文章
© 2024 鳄鱼CMS eyucms.com 版权所有 联系我们