在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

OpenHarmony開發實例:【電話簿聯系人Contacts】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-04-23 09:44 ? 次閱讀

樣例簡介

Contacts應用是基于OpenHarmony SDK開發的安裝在潤和HiSpark Taurus AI Camera(Hi3516d)開發板標準系統上的應用;應用主要功能是展示聯系人列表,并點擊某一列彈出聯系人詳細信息

運行效果

樣例效果

樣例原理

樣例主要有一個list組件和dialog組件組成,初始化加載數據展示列表,點擊某一列彈出對話框信息;如下圖:

原理圖

工程版本

  • 系統版本/API版本:OpenHarmony SDK API 8
  • IDE版本:DevEco Studio 3.0 Beta3

快速上手

準備硬件環境

[搭建標準系統環境]

準備開發環境

  • 安裝最新版[DevEco Studio]。
  • 請參考[配置OpenHarmony SDK],完成DevEco Studio的安裝和開發環境配置。
  • HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿

準備工程

配置git
  • 提前注冊準備碼云gitee賬號。
  • git工具下載安裝
    sudo apt install git
    sudo apt install git-lfs
    
  • 配置git用戶信息
    git config --global user.name "yourname"
    git config --global user.email "your-email-address"
    git config --global credential.helper store
    
git下載
git clone https://gitee.com/openharmony-sig/knowledge_demo_smart_home.git --depth=1
工程導入
  • DevEco Studio導入本工程;
    打開DevEco Studio,點擊File->Open->下載路徑/FA/Contacts
    打開工程導入工程

編譯

  • 點擊File > Project Structure > Project > Signing Configs界面勾選“ Automatically generate signing ”,等待自動簽名完成即可,點擊“ OK ”。如下圖所示:運行
  • 點擊Build->Build Hap/APPs 編譯,編譯成功生成entry-default-signed.hap

編譯編譯完成

燒錄/安裝

  • 將搭載OpenHarmony標準系統的開發板與電腦連接。
  • 識別到設備后點擊img,或使用默認快捷鍵Shift+F10(macOS為Control+R)運行應用。

運行

  • [安裝應用]如果IDE沒有識別到設備就需要通過命令安裝,如下
    打開OpenHarmony SDK路徑 toolchains 文件夾下,執行如下hdc_std命令,其中path為hap包所在絕對路徑。

    hdc_std install -r pathentry-default-signed.hap//安裝的hap包需為xxx-signed.hap,即安裝攜帶簽名信息的hap包。
    

    PS環境準備,源碼下載,編譯,燒錄設備,應用部署的完整步驟請參考[這里]

代碼分析

鴻蒙開發指導文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

搜狗高速瀏覽器截圖20240326151547.png

完整的項目結構目錄如下

├─entrysrcmain
│          │  config.json  //應用配置文件
│          │  
│          ├─js
│          │  └─MainAbility
│          │      │  app.js  // 應用程序入口
│          │      │  
│          │      ├─common   // 公共資源
│          │      │  │  checkbutton.png
│          │      │  │  delete.png
│          │      │  │  done.png
│          │      │  │  head0.png
│          │      │  │  head1.png
│          │      │  │  head2.png
│          │      │  │  head3.png
│          │      │  │  head4.png
│          │      │  │  right.png
│          │      │  │  
│          │      │  └─images
│          │      │          bg-tv.jpg
│          │      │          Wallpaper.png
│          │      │          
│          │      ├─i18n   // 多語言文件
│          │      │      en-US.json
│          │      │      zh-CN.json
│          │      │      
│          │      └─pages
│          │          └─index
│          │                  index.css  //頁面樣式
│          │                  index.hml  //首頁展示
│          │                  index.js   //頁面邏輯
│          │                  
│          └─resources
│              ├─base
│              │  ├─element
│              │  │      string.json
│              │  │      
│              │  └─media
│              │          icon.png
│              │          
│              └─rawfile

開發步驟

1. 新建OpenHarmony ETS項目

在DevEco Studio中點擊File -> New Project ->[Standard]Empty Ability->Next,Language 選擇JS語言,最后點擊Finish即創建成功。 image-20211124092813545

2. 編寫主頁面

image-20211124093106260

2.1頁面展示

1)最外層是[div]容器;

2)再通過[list]包裹[list-item]并設置點擊事件[onclick]);

3)list_item 包括頭像[image]和包括姓名和電話號碼的div 按行布局容器,以及右尖括號圖標;

4)[dialog]對話框容器包裹div容器和以及[button]組件,且div容器里面也是兩個[label]和輸入框的[input]

< div class="container" >
    < list class="list" >
        < list-item for="{{ contactList }}" class="list-item" onfocus="listFocus({{ $idx }})"
                   onclick="clickItem({{ $idx }})" >
            < image src="{{ $item.imageSrc }}" class="list-image" >< /image >
            < div class="content" >
                < text class="list-text" >
                    {{ $item.name }}
                < /text >
                < text class="list-text" focusable="true" >
                    {{ $item.phone }}
                < /text >
            < /div >
            < image class="right-image" src="/common/right.png" >
            < /image >
        < /list-item >
    < /list >

    < dialog id="detailDialog" class="dialog-main" @cancel="dialogCancel" >
        < div class="dialog-div" >
            < image src="{{ imageSrc }}" class="avatar" >< /image >
            < div class="input-box" >
                < div class="flex-row" >
                    < label class="label" target="name" >名字< /label >
                    < input id="name" class="input" type="text" value="{{ name }}" @change="changeName" >
                    < /input >
                < /div >
                < div class="flex-row" >
                    < label class="label" target="phone" >電話< /label >
                    < input id="phone" class="input" type="text" value="{{ phone }}" @change="changePhone" >
                    < /input >
                < /div >
            < /div >
            < div class="inner-btn" >
                < button class="btn" type="text" onclick="cancel" >取消< /button >
                < button class="btn" type="text" onclick="confirm" >確認< /button >
            < /div >
        < /div >
    < /dialog >
< /div >
2.2點擊事件

點擊某一行后,并根據當前行的id 彈出dialog對話框,展示對應的頭像和名字和電話

clickItem(idx) {
        this.imageSrc = this.contactList[idx].imageSrc;
        this.name = this.contactList[idx].name;
        this.phone = this.contactList[idx].phone;
        this.showDialog();
        this.index = idx;
    },
2.3對話框姓名和電話修改

點擊對話框名字框/電話框,會彈出軟鍵盤,輸入完成后會修改對應內容

// 更新input Name值
    changeName(e) {
        let changeValue = e.text
        this.name = changeValue;
    },
    // 更新input Phone值
    changePhone(e) {
        let changeValue = e.text;
        this.phone = changeValue;
    },
2.4對話框確定按鈕

點擊對話框確定按鈕后,會將修改的姓名和電話號碼存儲到聯系人列表

confirm() {
        //修改對應行后保存到列表中
        this.contactList[this.index].name = this.name;
        this.contactList[this.index].phone = this.phone;
        this.$element('detailDialog').close();
    },

操作體驗

操作體驗

審核編輯 黃宇

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

    關注

    79

    文章

    1975

    瀏覽量

    30194
  • OpenHarmony
    +關注

    關注

    25

    文章

    3722

    瀏覽量

    16317
  • 鴻蒙OS
    +關注

    關注

    0

    文章

    188

    瀏覽量

    4392
收藏 人收藏

    評論

    相關推薦

    聯旭銀河廠家直銷各種LED開關電源,量大從優,聯系人單經理,電話***,微信15940140279

    聯旭銀河廠家直銷各種LED開關電源,量大從優,和明偉、恒孚、創聯質量一樣的好電源,高性價比,聯系人單經理,電話***,微信15940140279
    發表于 07-30 12:22

    OpenHarmony開發樣例】基于BearPi套件開發的智能兒童手表系統

    設置完電話號碼后,然后短按手表端的F2按鍵,進入撥打號碼界面,具體如下:長按兒童手表的F2按鍵3秒以上,進入電話簿界面,然后再短按F2按鍵可選擇聯系人,最后長按F2按鍵保存并退出,下次再次短按F2按鍵
    發表于 03-08 14:27

    HC8218 阿拉伯電話本來電顯示電話芯片

    HC8218 阿拉伯電話本來電顯示電話芯片 來電顯示:FSK & DTMF兼容英文/阿拉伯文/波斯文三種語言菜單及電話簿輸入;電話簿輸入可采用
    發表于 01-15 09:44 ?1146次閱讀

    手機電話簿項目

    手機電話簿項目              電話簿作為
    發表于 12-19 11:44 ?367次閱讀

    手機電話簿容量

    手機電話簿容量              大容量的手機電話簿目前也成為新品手機的一個賣點。由于現代人交際面越來越廣,
    發表于 12-19 11:46 ?761次閱讀

    手機電話簿分組

    手機電話簿分組              電話簿分組功能是將現有電話簿根據用戶需要,自定義分組的一種
    發表于 12-19 11:48 ?1267次閱讀

    手機的電話簿項目

    手機的電話簿項目              電話簿作為手機的基本
    發表于 12-31 11:46 ?662次閱讀

    手機電話簿分組

    手機電話簿分組              電話簿分組
    發表于 12-31 11:48 ?592次閱讀

    雅虎郵箱增導入Facebook聯系人功能

    雅虎郵箱增導入Facebook聯系人功能 業界人士認為,雅虎郵箱增加導入Facebook聯系人功能,意在吸引更多微軟Hotmail和谷歌Gmail用戶轉用雅虎郵箱,雖然雅虎并不一定能夠實
    發表于 03-06 09:04 ?1349次閱讀

    iPhone6/plus和iPhone7/plus誤刪聯系人,秒召回的辦法,百試不爽!

    iPhone誤刪,這是一個人人都會遇到的問題,有時候是短信,有時候是通話或者聊天記錄,還有時候就是聯系人了,明明記得存過電話,怎么需要找的時候找不到?
    發表于 05-19 10:20 ?3116次閱讀

    三星手機出現奇怪bug:隨機給聯系人發照片

    6月29日上午消息,多家外媒報道,一些國外用戶的三星手機的信息系統出現奇怪bug,它會隨機向手機中的聯系人發送照片。 國外論壇Reddit上已經有不少用戶反映此問題。具體癥狀是,手機會通過系統自帶
    的頭像 發表于 06-30 10:23 ?3384次閱讀

    谷歌通訊錄應用允許用戶備份和同步設備上的聯系人

    好消息是,近日更新的 Google Contacts 應用,已經允許用戶選擇備份和同步本地存儲的聯系人信息了。
    的頭像 發表于 02-29 15:33 ?2542次閱讀
    谷歌通訊錄應用允許用戶備份和同步設備上的<b class='flag-5'>聯系人</b>

    淺談Sci-Hub和Handshake 工作原理

    Namebase CEO Tieshun Roquerre 介紹說:「DNS 就像互聯網的電話簿電話簿中的地址是服務器 IP 地址。
    的頭像 發表于 01-13 15:13 ?2631次閱讀

    基于openharmony移植實現類似用戶聯系人通訊錄展示功能

    項目介紹 項目名稱:ImageLetterIcon 所屬系列:openharmony的第三方組件適配移植 功能:實現類似用戶聯系人通訊錄展示功能,支持帶邊框和字母的圓形、矩形、圓角矩形、圖片背景效果
    發表于 03-23 10:09 ?0次下載
    基于<b class='flag-5'>openharmony</b>移植實現類似用戶<b class='flag-5'>聯系人</b>通訊錄展示功能

    openharmony第三方組件適配移植的聯系人列表組件教程

    項目介紹 項目名稱:Contacts 所屬系列:openharmony的第三方組件適配移植 功能:一個聯系人列表,漢字轉拼音的實現 項目移植狀態:主功能完成 調用差異:無 開發版本:s
    發表于 03-30 11:03 ?0次下載
    主站蜘蛛池模板: 糖心vlog麻豆精东影业传媒| 九九热精品在线视频| 五月天婷婷网址| 欧美另类bbw| 成人免费国产gav视频在线| 亚洲国产高清人在线| 久草色播| 九九99久久精品影视| 中国同志chinese小彬tv| 亚洲嫩草影院在线观看| 国产亚洲婷婷香蕉久久精品| 加勒比在线一区| 亚洲五月婷| 国产nv精品你懂得| 欧美一区二区三区激情啪啪| 国模小丫大尺度啪啪人体| 四虎影视永久在线精品免费播放| 国产美女免费| 免费日本黄色网址| 中文字幕天堂| 全部免费a级毛片| 深夜久久| 一级美女片| 四虎最新免费观看网址| 又长又大又粗又硬3p免费视| 在线观看亚洲专3333| 四虎影院永久免费观看| 午夜免费片| 国产精品丝袜在线观看| 国产精品一区二区三| 酒色成人网| 欧美成人性动漫在线观看| 狠狠操亚洲| 上课被同桌强行摸下面小黄文| 午夜a级毛片| 中国成人在线视频| 色网站综合| 手机看片国产免费永久| 直接在线观看的三级网址| bt天堂资源种子在线| 男人j进女人j免费视频视频|