色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

深入淺出學習eTs之九宮格密碼鎖功能實現(xiàn)

Harmony&嵌入式學習 ? 來源:Harmony&嵌入式學習 ? 作者:Harmony&嵌入式學 ? 2023-05-13 13:25 ? 次閱讀

本項目Gitee倉地址:深入淺出eTs學習: 帶大家深入淺出學習eTs (gitee.com)

一、需求分析

相信沒有人沒有使用過九宮格解鎖吧,從智能機開始迸發(fā)的時期到現(xiàn)在,我們本期就要做一個自己的密碼鎖

密碼正確可進入

提示密碼錯誤

可修改密碼

二、控件介紹

PatternLockOpenAtom OpenHarmony

圖案密碼鎖組件,以九宮格圖案的方式輸入密碼,用于密碼驗證場景。手指在PatternLock組件區(qū)域按下時開始進入輸入狀態(tài),手指離開屏幕時結束輸入狀態(tài)完成密碼輸入。

說明:

該組件從API Version 9開始支持。后續(xù)版本如有新增內容,則采用上角標單獨標記該內容的起始版本。

接口

PatternLock(controller?: PatternLockController)

參數(shù):

參數(shù)名 參數(shù)類型 必填 描述
controller PatternLockController 設置PatternLock組件控制器,可用于控制組件狀態(tài)重置。


屬性

不支持除backgroundColor以外的通用屬性設置。

名稱 參數(shù)類型 描述
sideLength Length 設置組件的寬度和高度(寬高相同)。設置為0或負數(shù)等非法值時組件不顯示。 默認值:300vp
circleRadius Length 設置宮格中圓點的半徑。 默認值:14vp
regularColor ResourceColor 設置宮格圓點在“未選中”狀態(tài)的填充顏色。 默認值:Color.Black
selectedColor ResourceColor 設置宮格圓點在“選中”狀態(tài)的填充顏色。 默認值:Color.Black
activeColor ResourceColor 設置宮格圓點在“激活”狀態(tài)的填充顏色(“激活”狀態(tài)為手指經(jīng)過圓點但還未選中的狀態(tài))。 默認值:Color.Black
pathColor ResourceColor 設置連線的顏色。 默認值:Color.Blue
pathStrokeWidth number | string 設置連線的寬度。設置為0或負數(shù)等非法值時連線不顯示。 默認值:34vp
autoReset boolean 設置在完成密碼輸入后再次在組件區(qū)域按下時是否重置組件狀態(tài)。設置為true,完成密碼輸入后再次在組件區(qū)域按下時會重置組件狀態(tài)(即清除之前輸入的密碼);反之若設置為false,則不會重置組件狀態(tài)。 默認值:true

事件

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

名稱 描述
onPatternComplete(callback: (input: Array) => void) 密碼輸入結束時觸發(fā)該回調。 input: 與選中宮格圓點順序一致的數(shù)字數(shù)組,數(shù)字為選中宮格圓點的索引值(第一行圓點從左往右依次為0,1,2,第二行圓點依次為3,4,5,第三行圓點依次為6,7,8)。

wKgZomRfH2GAJWs9AAB5XPQ8OYI371.gif

@Entry @Component struct PatternLockTest {

  build() {
    Column({space: 10}) {
      PatternLock(this.patternLockController)
    }
    .width('100%')
    .height('100%')
    .padding(10)
  }
}

三、UI設計

(1)放置九宮格

首先放入一個九宮格,設置參數(shù)

wKgaomRfH2KANQMUAABjJ0e0W1M095.png

      PatternLock(this.patternLockController)
        .sideLength(350)            // 設置寬高
        .circleRadius(15)            // 設置圓點半徑
        .regularColor(Color.Blue)    // 設置圓點顏色
        .pathStrokeWidth(30)        // 設置連線粗細
        .backgroundColor('rgba(209, 219, 229, 0.95)')
        .autoReset(true)            // 支持用戶在完成輸入后再次觸屏重置組件狀態(tài)
        .border({radius:30})
        .onPatternComplete((input: Array) => {
        })

(2)放置按鈕

wKgZomRfH2KAbg1HAABPtkUGAT0944.png

            Button('清除')
              .width(200)
              .fontSize(20)
              .onClick(() => {
                this.patternLockController.reset();
              })

(3)設置密碼

wKgaomRfH2OAWNlgAABxjxZuEtg370.png

 @State passwords: Number[] = []

      Text(this.passwords.toString())
        .textAlign(TextAlign.Center)
        .fontSize(22)

        .onPatternComplete((input: Array) => {
          if (input == null || input == undefined || input.length < 5) {
            this.message = "密碼長度至少為5位數(shù)。";
            return;
          }
          if (this.passwords.length > 0) {
            if (this.passwords.toString() == input.toString()) {
              this.passwords = input
              this.message = "密碼設置成功"
            } else {
              this.message = '密碼輸入錯誤'
            }
          } else {
            this.passwords = input
            this.message = "密碼輸入錯誤"
          }
        })

(4)修改密碼

wKgZomRfH2OASFpoAACBRsG_DAo600.png

      Button('重置密碼')
        .width(200)
        .fontSize(20)
        .onClick(() => {
          set_flag = 1;
          this.passwords = [];
          this.message = '請輸入新的密碼';
          this.patternLockController.reset();
        })

四、效果展示

wKgaomRfH2SAIOcPAAMFfsVnHbE049.gif

設置密碼

wKgZomRfH2SAUdf2AAMGelayeGI177.gif

密碼錯誤

wKgaomRfH2WALvNkAAGPMAnGNgc430.gif

密碼正確

編輯:黃飛

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 密碼鎖
    +關注

    關注

    6

    文章

    249

    瀏覽量

    34993
  • ets
    ets
    +關注

    關注

    0

    文章

    20

    瀏覽量

    1619
  • OpenHarmony
    +關注

    關注

    25

    文章

    3713

    瀏覽量

    16254
收藏 人收藏

    評論

    相關推薦

    #深入淺出學習eTs#(八)“猜大小”小游戲

    本項目Gitee倉地址:[深入淺出eTs學習: 帶大家深入淺出學習eTs (gitee.com)
    的頭像 發(fā)表于 05-17 15:08 ?1018次閱讀
    #<b class='flag-5'>深入淺出</b><b class='flag-5'>學習</b><b class='flag-5'>eTs</b>#(八)“猜大小”小游戲

    #深入淺出學習eTs#(十)藍藥丸還是紅藥丸

    本項目Gitee倉地址: 深入淺出eTs學習: 帶大家深入淺出學習eTs (gitee.com)
    的頭像 發(fā)表于 05-17 15:07 ?947次閱讀
    #<b class='flag-5'>深入淺出</b><b class='flag-5'>學習</b><b class='flag-5'>eTs</b>#(十)藍藥丸還是紅藥丸

    九宮格如何解鎖

    請問一下大家,安卓手機九宮格了怎么解鎖,,,,小弟謝謝了
    發(fā)表于 03-06 17:55

    九宮格圖標界面登陸與管理(類似手機界面)

    請問哪位大師可以推薦類似九宮格圖標界面的登陸與管理的例程呢?
    發(fā)表于 10-08 11:48

    九宮格鍵盤 已實現(xiàn)、大寫 、長按

    ` 本帖最后由 123abcfpga 于 2018-4-28 14:04 編輯 九宮格鍵盤實現(xiàn)字母輸入大寫長按等功能 提供源碼源碼獲取:有償1積分(資料太貴、積分又沒有,只能靠發(fā)
    發(fā)表于 04-28 13:52

    51內核迪文串口屏模擬手勢解鎖功能九宮格&滑動)

    實現(xiàn),會更加美觀;變量圖標用于在判斷為有效觸控時,改變顯示內容以達到提示的效果。 三、九宮格解鎖實現(xiàn)方法詳解3.1 主流程 3.2 解鎖流程 3.3 設定密碼流程 3.4 確認
    發(fā)表于 10-31 10:51

    Photoshop九宮格制作方法

    Photoshop分享 九宮格制作(升級)
    發(fā)表于 04-07 07:39

    求一種基于Qtopia的采用傳統(tǒng)九宮格方式的中文輸入法設計

    基于Qtopia的插件技術,實現(xiàn)了傳統(tǒng)九宮格方式的中文拼音輸入法,該輸入法在輸入中文時支持詞語聯(lián)想功能及用戶輸入高頻詞自適應功能
    發(fā)表于 04-26 07:01

    #深入淺出學習eTs#(七)判斷密碼是否正確

    本項目Gitee倉地址:深入淺出eTs學習: 帶大家深入淺出學習eTs (gitee.com)一
    發(fā)表于 12-29 10:06

    #深入淺出學習eTs#(十五)九宮格密碼鎖

    本項目Gitee倉地址:深入淺出eTs學習: 帶大家深入淺出學習eTs (gitee.com)一
    發(fā)表于 12-29 13:55

    STM32深入淺出新手篇

    STM32深入淺出新手篇,很好的單片機學習資料。
    發(fā)表于 03-21 17:43 ?128次下載

    手機輸入法到底是九宮格好用還是全鍵盤好用

    手機輸入法到底是九宮格好用還是全鍵盤好用?這個話題已經(jīng)由來已久。
    的頭像 發(fā)表于 03-18 09:22 ?4577次閱讀

    深入淺出學習250個通信原理資源下載

    深入淺出學習250個通信原理資源下載
    發(fā)表于 04-12 09:16 ?28次下載

    深入淺出學習eTs(一)模擬器/真機環(huán)境搭建

    本項目的Gitee倉地址: 深入淺出eTs學習: 帶大家深入淺出學習eTs (gitee.com
    的頭像 發(fā)表于 05-13 13:17 ?1670次閱讀
    <b class='flag-5'>深入淺出</b><b class='flag-5'>學習</b><b class='flag-5'>eTs</b>(一)模擬器/真機環(huán)境搭建

    深入淺出學習eTs(七)如何判斷密碼是否正確

    本項目Gitee倉地址: 深入淺出eTs學習: 帶大家深入淺出學習eTs (gitee.com)
    的頭像 發(fā)表于 05-13 13:20 ?907次閱讀
    <b class='flag-5'>深入淺出</b><b class='flag-5'>學習</b><b class='flag-5'>eTs</b>(七)如何判斷<b class='flag-5'>密碼</b>是否正確
    主站蜘蛛池模板: 日本动漫henta videos| 欧美特黄三级成人| 日本漫画大全无翼乌| 伊人网站在线| 国产免费变态视频网址网站| 日本性hd| 大香网伊人久久综合观看| 强奷乱码中文字幕熟女免费 | 拉菲娱乐主管高工资q39709| 一个人免费播放高清在线观看| 国内国外精品影片无人区| 午夜啪啪免费视频| 国产欧美一区二区三区久久| 午夜国产羞羞视频免费网站| 国产免费久久爱久久啪| 羞羞答答的免费视频在线观看| 国产日韩精品SUV| 亚洲美女视频高清在线看| 国产综合自拍 偷拍在线| 亚洲人交性视频| 久久免费精彩视频| 97成人在线视频| 热久久免费频精品99热| 国产69精品久久久久人妻刘玥| 午夜伦理电影在线观免费| 狠狠射首页| 97精品一区二区视频在线观看| 欧美日韩高清一区| 国产Av影片麻豆精品传媒| 亚洲国产精品无码中文在线| 久久精视频| GAY2022空少被体育生暴菊| 日韩精品真人荷官无码| 国产午夜小视频| 最近日本字幕免费高清| 欧美亚洲国产免费高清视频| 国产成人 免费观看| 亚洲日韩中文字幕区| 免费成年人在线视频| 俄罗斯呦呦| 欲香欲色天天影视大全|