本項目Gitee倉地址:深入淺出eTs學習: 帶大家深入淺出學習eTs (gitee.com)
一、需求分析
我們本章的內容是要制作一個可以隨著自己想要內容而變化的一個二維碼,通過輸入框輸入內容,實現二維碼圖形的改變
- 通過輸入框輸入內容
- 使用按鈕進行改變
- 使用二維碼進行顯示
二、控件介紹
這里我們使用的是官方提供的QR控件
QRCode
用于顯示單個二維碼的組件。
說明: 該組件從API Version 7開始支持。后續版本如有新增內容,則采用上角標單獨標記該內容的起始版本。
interface QRCodeInterface {
(value: string): QRCodeAttribute;
}
QRCode('Hello, OpenHarmony')
.width(70)
.height(70)
復制
簡單樣例如上圖程序
三、UI繪制
(1)我們首先需要建立一個輸入框,同時綁定一下輸入框的內容(因為預覽器不能實現輸入功能)
@State message: string = 'Hello OpenHarmony'
TextInput({
placeholder: this.message,
})
.width('80%')
復制

得到上方內容,此時我們可以通過對message變量的修改實現內容的改變
(2)接下來創建按鈕
Button('點擊生成二維碼')
.fontSize(20)
.margin({top:20})
復制
我們這里使用到了margin參數,該參數描述如下:
| 名稱 | 參數說明 | 默認值 | 描述 |
|---|---|---|---|
| margin | { top?: Length, right?: Length, bottom?: Length, left?: Length } | Length | 0 | 設置外邊距屬性。 參數為Length類型時,四個方向外邊距同時生效。 |
因為我們只需要在上面實現一個移位效果,這樣看起來更正常

未移位的效果

移位后的效果
(3)使用QRcode控件
QRCode(this.message)
.width(170)
.height(170)
.margin({bottom:20})
TextInput({
placeholder: this.message,
})
.width('80%')
Button('點擊生成二維碼')
.fontSize(20)
.margin({top:20})
復制
二維碼的生成要在輸入框的上面,所以這里將其放置在上部,內容比較簡潔,同時使用了margin對底部進行了移位,更加美觀

四、系統測試

如上圖所示,完美實現預期,后期大家可以進行調色之類,比如說健康碼變紅了?

當然,還是希望大家永不變紅,大家可以下載(在第一行有Gitee倉地址)或者按照流程來自己寫一個綠碼的內容。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
代碼
+關注
關注
30文章
4974瀏覽量
74287 -
OpenHarmony
+關注
關注
33文章
3966瀏覽量
21313
發布評論請先 登錄
相關推薦
熱點推薦
OpenHarmony應用實現二維碼掃碼識別
應用的掃描二維碼的頁面。
本文就以??橘子購物示例應用??為例,來講解OpenHarmony應用二維碼開發相關的技術點。
我們先看下二維碼相關的幾個概念。
● 二維碼
發表于 08-23 17:00
二維碼技術的編譯規則分析
本文針對二維碼編譯原理進行了深入分析和研究,并詳細描述了QR Code技術生成二維碼過程中的編譯規則,分別對數據編碼和糾錯碼編碼進行了全面分析,最后還簡單介紹了使
發表于 11-05 15:19
?29次下載
如何將視頻轉換生成二維碼掃碼觀看
如今,二維碼的應用越來越廣了,也非常方便,那么如何把視頻轉換生成二維碼呢?網頁地址轉換二維碼的工具很多,但視頻轉換二維碼的工具,可就比較少了
發表于 07-30 15:21
?1.4w次閱讀
二維碼在智能門禁中的應用,二維碼門禁如何保證安全性
是:會的。 若不夠用,是不是會重復使用?那對智能門禁而言,又怎樣能保證二維碼的安全性?要想搞清這些問題,我們需要從二維碼原理說起。二維碼怎樣識別?二維碼技術包含
工業二維碼是什么,如何使用工業二維碼
工業二維碼讀取器在智能制造業領域的作用越來越重要,為了讓多用戶了解工業二維碼的相關知識,從而大限度地提高讀取率、增加產量和降低成本,讓你對工業二維碼讀取器和工業二維碼知識進行面的了解。
發表于 06-24 17:41
?5326次閱讀
鴻蒙系統生成二維碼技術
?? 在實際應用開發中,時不時的會遇到 AI 領域相關的一些技術,本節主要詳細講述一下生成二維碼技術,二維碼可能涉及在各領域中,如:社交或通訊類應用、購物或支付類應用等。 ??? ? 所以
#深入淺出學習eTs#(九)變紅碼?專屬二維碼生成
評論