鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:PatternLock)

图案密码锁组件,以九宫格图案的方式输入密码,用于密码验证场景。手指在PatternLock组件区域按下时开始进入输入状态,手指离开屏幕时结束输入状态完成密码输入。

说明:

该组件从API Version 9开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。

子组件

接口

PatternLock(controller?: PatternLockController)

参数:

参数名参数类型必填描述
controllerPatternLockController设置PatternLock组件控制器,可用于控制组件状态重置。

属性

除支持通用属性外,还支持以下属性:

名称参数类型描述
sideLengthLength设置组件的宽度和高度(宽高相同)。设置为0或负数时组件不显示。
默认值:288vp
circleRadiusLength设置宫格中圆点的半径。设置为0或负数时取默认值。
默认值:6vp
regularColorResourceColor设置宫格圆点在“未选中”状态的填充颜色。
默认值:'#ff182431'
selectedColorResourceColor设置宫格圆点在“选中”状态的填充颜色。
默认值:'#ff182431'
activeColorResourceColor设置宫格圆点在“激活”状态的填充颜色(“激活”状态为手指经过圆点但还未选中的状态)。
默认值:'#ff182431'
pathColorResourceColor设置连线的颜色。
默认值:'#33182431'
pathStrokeWidthnumber | string设置连线的宽度。设置为0或负数时连线不显示。
默认值:12vp
autoResetboolean设置在完成密码输入后再次在组件区域按下时是否重置组件状态。设置为true,完成密码输入后再次在组件区域按下时会重置组件状态(即清除之前输入的密码);反之若设置为false,则不会重置组件状态。
默认值:true

事件

除支持通用事件外,还支持以下事件:

名称描述
onPatternComplete(callback: (input: Array<number>) => void)密码输入结束时触发该回调。
input: 与选中宫格圆点顺序一致的数字数组,数字为选中宫格圆点的索引值(第一行圆点从左往右依次为0、1、2,第二行圆点依次为3、4、5,第三行圆点依次为6、7、8)。
onDotConnect(callback: CallBack<number>)11+密码输入选中宫格圆点时触发该回调。
说明:
回调参数为选中宫格圆点顺序的数字,数字为选中宫格圆点的索引值(第一行圆点从左往右依次为0、1、2,第二行圆点依次为3、4、5,第三行圆点依次为6、7、8)。

PatternLockController

PatternLock组件的控制器,可以通过它进行组件状态重置。

导入对象

let patternLockController: PatternLockController = new PatternLockController()

reset

reset(): void

重置组件状态。

setChallengeResult11+

setChallengeResult(result: PatternLockChallengeResult): void

用于设置图案密码正确或错误状态。

参数参数类型必填参数描述
resultPatternLockChallengeResult图案密码状态。

PatternLockChallengeResult11+枚举说明

名称描述
CORRECT图案密码正确。
WRONG图案密码错误。

示例

// xxx.ets
@Entry
@Component
struct PatternLockExample {
  @State passwords: Number[] = []
  @State message: string = 'please input password!'
  private patternLockController: PatternLockController = new PatternLockController()

  build() {
    Column() {
      Text(this.message).textAlign(TextAlign.Center).margin(20).fontSize(20)
      PatternLock(this.patternLockController)
        .sideLength(200)
        .circleRadius(9)
        .pathStrokeWidth(18)
        .activeColor('#B0C4DE')
        .selectedColor('#228B22')
        .pathColor('#90EE90')
        .backgroundColor('#F5F5F5')
        .autoReset(true)
        .onDotConnect((index: number) => {
          console.log("onDotConnect index: " + index)
        })
        .onPatternComplete((input: Array<number>) => {
          // 输入的密码长度小于5时,提示重新输入
          if (input === null || input === undefined || input.length < 5) {
            this.message = 'The password length needs to be greater than 5, please enter again.'
            return
          }
          // 判断密码长度是否大于0
          if (this.passwords.length > 0) {
            // 判断两次输入的密码是否相同,相同则提示密码设置成功,否则提示重新输入
            if (this.passwords.toString() === input.toString()) {
              this.passwords = input
              this.message = 'Set password successfully: ' + this.passwords.toString()
              this.patternLockController.setChallengeResult(PatternLockChallengeResult.CORRECT)
            } else {
              this.message = 'Inconsistent passwords, please enter again.'
              this.patternLockController.setChallengeResult(PatternLockChallengeResult.WRONG)
            }
          } else {
            // 提示第二次输入密码
            this.passwords = input
            this.message = "Please enter again."
          }
        })
      Button('Reset PatternLock').margin(30).onClick(() => {
        // 重置密码锁
        this.patternLockController.reset()
        this.passwords = []
        this.message = 'Please input password'
      })
    }.width('100%').height('100%')
  }
}

patternlock

最后,有很多小伙伴不知道学习哪些鸿蒙开发技术?不知道需要重点掌握哪些鸿蒙应用开发知识点?而且学习时频繁踩坑,最终浪费大量时间。所以有一份实用的鸿蒙(Harmony NEXT)资料用来跟着学习是非常有必要的。 

这份鸿蒙(Harmony NEXT)资料包含了鸿蒙开发必掌握的核心知识要点,内容包含了ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等)鸿蒙(Harmony NEXT)技术知识点。

希望这一份鸿蒙学习资料能够给大家带来帮助,有需要的小伙伴自行领取,限时开源,先到先得~无套路领取!!

获取这份完整版高清学习路线,请点击→纯血版全套鸿蒙HarmonyOS学习资料

腾讯T10级高工技术,安卓全套VIP内容 →Android全套学习资料

腾讯T10级高工技术,安卓全套VIP课程

鸿蒙(Harmony NEXT)最新学习路线

  •  HarmonOS基础技能

  • HarmonOS就业必备技能 
  •  HarmonOS多媒体技术

  • 鸿蒙NaPi组件进阶

  • HarmonOS高级技能

  • 初识HarmonOS内核 
  • 实战就业级设备开发

有了路线图,怎么能没有学习资料呢,小编也准备了一份联合鸿蒙官方发布笔记整理收纳的一套系统性的鸿蒙(OpenHarmony )学习手册(共计1236页)鸿蒙(OpenHarmony )开发入门教学视频,内容包含:ArkTS、ArkUI、Web开发、应用模型、资源分类…等知识点。

获取以上完整版高清学习路线,请点击→纯血版全套鸿蒙HarmonyOS学习资料

《鸿蒙 (OpenHarmony)开发入门教学视频》

《鸿蒙生态应用开发V2.0白皮书》

图片

《鸿蒙 (OpenHarmony)开发基础到实战手册》

OpenHarmony北向、南向开发环境搭建

图片

 《鸿蒙开发基础》

  • ArkTS语言
  • 安装DevEco Studio
  • 运用你的第一个ArkTS应用
  • ArkUI声明式UI开发
  • .……

图片

 《鸿蒙开发进阶》

  • Stage模型入门
  • 网络管理
  • 数据管理
  • 电话服务
  • 分布式应用开发
  • 通知与窗口管理
  • 多媒体技术
  • 安全技能
  • 任务管理
  • WebGL
  • 国际化开发
  • 应用测试
  • DFX面向未来设计
  • 鸿蒙系统移植和裁剪定制
  • ……

图片

《鸿蒙进阶实战》

  • ArkTS实践
  • UIAbility应用
  • 网络案例
  • ……

图片

 获取以上完整鸿蒙HarmonyOS学习资料,请点击→纯血版全套鸿蒙HarmonyOS学习资料

总结

总的来说,华为鸿蒙不再兼容安卓,对中年程序员来说是一个挑战,也是一个机会。只有积极应对变化,不断学习和提升自己,他们才能在这个变革的时代中立于不败之地。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/449310.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

日期组件报错:Prop being mutated: “placement“

在使用vue2.0开发项目时遇到一个使用日期选择器的报错 报错截图&#xff1a; 对比官网比对没有发现问题&#xff0c;后来查询资料找到了两个解决方案 方案1&#xff08;推荐&#xff09;&#xff1a; 在日期组件的标签处添加如下属性placement“bottom-start”&#xff1a;…

openssl3.2 - 官方demo学习 - encode - ec_encode.c

文章目录 openssl3.2 - 官方demo学习 - encode - ec_encode.c概述笔记产生ecc私钥产生ecc公钥测试工程备注备注END openssl3.2 - 官方demo学习 - encode - ec_encode.c 概述 官方demos/encode 目录中给了2个例子工程 功能是载入(RSA/ECC)公钥, 然后自己就可以拿内存中的公钥对…

如何保护企业云上安全

近日&#xff0c;CrowdStrike发布了《2024年全球威胁报告》&#xff0c;揭示了网络攻击的最新趋势。报告指出&#xff0c;网络攻击生态系统仍在持续增长&#xff0c;CrowdStrike在2023年观察到了34个新的威胁参与者。同时&#xff0c;攻击者正越来越多地瞄准云环境&#xff0c;…

机器学习,剪刀,石头,布

计算机视觉:剪刀,石头,步 TensorFlow AI人工智能及Machine Learning训练图集的下载建立分类模型并用图像进行训练检验模型总结当前AI Machine Learning 异常火爆,希望在MCU上使用机器学习,做图像识别的工作。看到一个剪刀,石头,步的学习程序,给大家分享一下。 TensorFl…

Centos7 安装mongodb 7.0

官方手册参考&#xff1a; https://www.mongodb.com/docs/manual/tutorial/install-mongodb-on-red-hat/ Mongodb支持的版本 安装 MongoDB 社区版 按照以下步骤使用包管理器安装 MongoDB Community Edition yum。 配置包管理系统 ( yum) 创建一个/etc/yum.repos.d/mongodb-o…

【机器学习】科学库使用第1篇:机器学习(常用科学计算库的使用)基础定位、目标【附代码文档】

机器学习&#xff08;科学计算库&#xff09;完整教程&#xff08;附代码资料&#xff09;主要内容讲述&#xff1a;机器学习&#xff08;常用科学计算库的使用&#xff09;基础定位、目标&#xff0c;机器学习概述&#xff0c;1.1 人工智能概述&#xff0c;1.2 人工智能发展历…

使用OpenCV实现两张图像融合在一起

简单介绍 图像融合技术是一种结合多个不同来源或不同传感器捕获的同一场景的图像数据&#xff0c;以生成一幅更全面、更高质量的单一图像的过程。这种技术广泛应用于遥感、医学影像分析、计算机视觉等多个领域。常见的图像融合技术包括基于像素级、特征级和决策级的融合方法&a…

每日OJ题_路径dp⑥_力扣174. 地下城游戏

目录 力扣174. 地下城游戏 解析代码 力扣174. 地下城游戏 174. 地下城游戏 难度 困难 恶魔们抓住了公主并将她关在了地下城 dungeon 的 右下角 。地下城是由 m x n 个房间组成的二维网格。我们英勇的骑士最初被安置在 左上角 的房间里&#xff0c;他必须穿过地下城并通过对…

HTML 学习笔记 总结

总结 【标签按照功能进行分类】&#xff1a; <!DOCTYPE html>&#xff1a;声明为 HTML5 文档 <html>&#xff08;双标记、块标记&#xff09;&#xff1a;是 HTML 页面的根元素&#xff0c;定义 HTML 文档 <head>&#xff08;双标记、块标记&#xff09;&a…

缓存更新策略(旁路更新策略)

文章目录 前言旁路更新策略读操作写操作 总结 前言 Redis &#xff0c;是基于内存的数据库&#xff0c;我们常将其做为缓存&#xff0c;在数据访问时&#xff0c;达到更高的性能。 那么该如何使用 Redis 做为缓存呢&#xff1f;本篇文章介绍缓存的更新策略——Cache-Aside&am…

ASP.Net实现玩具管理(三层架构,两项数据相乘)

目录 演示功能&#xff1a; 点击启动生成页面 步骤&#xff1a; 1、建文件 ​编辑 2、添加引用关系 3、根据数据库中的列写Models下的XueshengModels类 4、DAL下的DBHelper&#xff08;对数据库进行操作&#xff09; 5、DAL数据访问层下的service文件 6、BLL业务逻辑层…

Vue3全家桶 - Vue3 - 【6】组件(注册组件 + 组件通信 + 透传属性和事件 + 插槽 + 单文件CSS + 依赖注入)

组件 一、 注册组件 1.1 ❌ 全局注册 目标文件&#xff1a;main.js&#xff1b;语法&#xff1a;import { createApp } from vue import App from ./App.vue const app createApp(App)// 全局注册 app.component(组件名字, 需要注册组件)app.mount(#app)缺陷&#xff1a; 全…

06-集合篇 面试题

1.算法复杂度分析 为什么要进行复杂度分析? 指导你编写出性能更优的代码评判别人写的代码的好坏分类: 时间复杂度分析空间复杂度分析/*** 求1~n的累加和 * @param n * @return*/ public int sum(int n) {int sum = 0;for (int i = 1; i <= n; i++) {sum = sum + i;}retur…

有线网络下windows电脑被投屏方案实践

最近在看使用笔记本屏幕作PC副屏的解决方案 无线网络Miracast 如果使用Win10/11自带的Miracast方案&#xff08;即windows系统中的&#xff1a;设置-系统-投影到此电脑&#xff09;&#xff0c;原则上需要通过Wi-Fi网络&#xff08;这是因为Miracast就是Wi-Fi联盟组织提出的&a…

Python 导入Excel三维坐标数据 生成三维曲面地形图(面) 2、线条平滑曲面但有间隔

环境和包: 环境 python:python-3.12.0-amd64包: matplotlib 3.8.2 pandas 2.1.4 openpyxl 3.1.2 scipy 1.12.0 代码: import pandas as pd import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D from scipy.interpolate import griddata im…

SSM整合项目(校验)

文章目录 1.前端校验1.需求分析2.HomeView.vue的数据池中添加校验规则3.HomeView.vue 绑定校验规则![image-20240311213428771](https://img-blog.csdnimg.cn/img_convert/7770bfa16814a0efd4eb818c9869a5bd.png)4.验证是否生效5.如果验证不通过&#xff0c;阻止用户提交表单1.…

中兴R5300G4无法识别全部硬盘与服务器Smart31002100RAID卡修改端口模式配置方法

中兴R5300G4无法识别全部硬盘&#xff0c;需要启动UEFI模式。 问题描述 硬盘配置RAID或者HBA直通模式需要修改RAID卡的端口模式。 本文介绍服务器分别在legacy、UEFI模式下的配置方法。 适用产品 R5300 G4、R5500 G4、R8500 G4 解决方案 一&#xff0e;Legacy启动模式&#x…

【深度学习】换脸新科技,InstantID: Zero-shot Identity-Preserving Generation in Seconds

论文&#xff1a;https://arxiv.org/abs/2401.07519 代码:https://github.com/InstantID/InstantID demo&#xff1a;https://huggingface.co/spaces/InstantX/InstantID 文章目录 1 引言2 相关工作2.1 文本到图像扩散模型2.2 主题驱动的图像生成2.3 保持ID的图像生成 3 方法3.…

【大厂AI课学习笔记NO.80】深度学习行业人才能力图谱

深度学习领域的就业岗位及所需关键技术、工具、能力分析 深度学习作为人工智能领域的一个重要分支&#xff0c;近年来得到了飞速的发展。随着技术的不断进步和应用场景的不断拓展&#xff0c;深度学习领域的就业岗位也日益增多。本文将从领军人才、产业研发人才、应用开发人才…

post为什么会发送两次请求?

post为什么会发送两次请求&#xff1f; 同源策略 在浏览器中&#xff0c;内容是很开放的&#xff0c;任何资源都可以接入其中&#xff0c;如 JavaScript 文件、图片、音频、视频等资源&#xff0c;甚至可以下载其他站点的可执行文件。但也不是说浏览器就是完全自由的&#xf…