用戶登陸UI

本節任務

完成用戶登陸UI,點擊登陸按鈕跳轉到應用主頁

界面原型:

登陸頁面:

在這里插入圖片描述

登陸成功頁面:

在這里插入圖片描述

涉及知識點:

  • 線性布局
  • Image組件
  • 輸入框
  • 復選框
  • 分割線
  • 按鈕
  • 路由跳轉
  • 背景色、內容對齊

1 新建項目

在這里插入圖片描述

錄入項目信息:

在這里插入圖片描述

2 logo部分

在index.ets下面編碼,完成登陸頁面,首先刪除原有樣例代碼,然后,使用column布局,添加logo:

@Entry
@Component
struct Index {build() {Column(){Image($r('app.media.gwglogo')).width(180).height(180).margin(10)      }.width('100%').height('100%')}
}

預覽效果:

在這里插入圖片描述

[!IMPORTANT]

圖片需要放到media目錄下:

\src\main\resources\base\media\gwglogo.png

3 登陸部分

仍然在column中使用上下布局,添加用戶名輸入框、密碼框、忘記密碼、登陸按鈕:

TextInput({placeholder:'用戶名/手機/郵箱'}).backgroundColor(Color.White).showUnderline(true).width('95%')TextInput({placeholder:'密碼'})//密碼框輸入模式不支持下劃線.type(InputType.Password).backgroundColor(Color.White).width('95%')
Text('忘記密碼').width('95%').fontSize(12).fontColor(Color.Gray).margin(10).textAlign(TextAlign.End)
Button('登陸').width('80%').backgroundColor('#ccc')

在這里插入圖片描述

4 注冊及用戶協議

使用Row布局:

      Row(){Text('立即注冊').fontSize(14)Text('短信登陸').fontSize(14)}.width('90%').justifyContent(FlexAlign.SpaceBetween).margin(10)Row(){Checkbox()Text('我已閱讀并同意《用戶協議》').fontSize(12).fontColor(Color.Red)}

預覽效果:

在這里插入圖片描述

5 其他方式登陸

添加分割線、其他方式登陸、登陸入口logo:

      Divider().margin(10)Text('其他方式登陸').fontSize(12)Row({space:8}){Image($r('app.media.letterA')).width(32).height(32).borderRadius(16)Image($r('app.media.letterB1')).width(32).height(32).borderRadius(16)Image($r('app.media.letterC1')).width(32).height(32).borderRadius(16)}.width('95%').margin(10).justifyContent(FlexAlign.Center)

預覽效果:

在這里插入圖片描述

6 登陸跳轉

1)新建主頁

在這里插入圖片描述

命名為MainPage:

在這里插入圖片描述

頁面預覽:

在這里插入圖片描述

2)路由跳轉

在登陸按鈕上綁定事件,點擊后通過路由進行跳轉:

      Button('登陸').width('80%').backgroundColor('#ccc').onClick(()=>{router.pushUrl({url:'pages/MainPage'})})

[!NOTE]

路由組件可以自動在代碼頭部導入:

import { router } from '@kit.ArkUI'

頁面路由鏈接從以下文件中獲取:

src/main/resources/base/profile/main_pages.json

{"src": ["pages/Index","pages/MainPage"]
}

預覽效果,首先點擊登陸按鈕:

在這里插入圖片描述

跳轉后頁面,點擊預覽器工具欄中的返回鍵可以返回登陸頁面:

在這里插入圖片描述

代碼參考:

https://gitee.com/snowyvalley/harmony-app-dev-basic-course.git

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/75851.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/75851.shtml
英文地址,請注明出處:http://en.pswp.cn/web/75851.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux多線(進)程編程——(1)前置知識

liunx多線程編程(前置知識)前置知識 前言 學習編程就像是修仙,分為宗門的正統修士(計算機專業的學生),以及野修(半路轉碼)。正統修士有各大宗門的功法,保證一路修行暢通…

Npfs!NpFsdCreate函數分析之從NpCreateClientEnd函數分析到Npfs!NpSetConnectedPipeState

第一部分: 1: kd> g Breakpoint 5 hit Npfs!NpFsdCreate: baaecba6 55 push ebp 1: kd> kc # 00 Npfs!NpFsdCreate 01 nt!IofCallDriver 02 nt!IopParseDevice 03 nt!ObpLookupObjectName 04 nt!ObOpenObjectByName 05 nt!IopCreateFile 06…

【軟件測試】bug 篇

本章思維導圖: 1. 軟件測試的生命周期 軟件測試貫穿于整個軟件的生命周期 流程階段需求分析測試計劃測試設計/開發測試執行測試評估上線運行維護具體工作內容1. 閱讀需求文檔 2. 標記可測試需求 3. 確定測試類型1. 制定測試范圍 2. 選擇測試工具 3. 分配資源1. 編寫…

「Unity3D」圖片導入選項取消Read/Write,就無法正確顯示導入大小,以及Addressable打包無法正確顯示的問題

如果在Edit -> Project Settings -> Editor中的“Load texture data on demand”勾選,就會讓圖片導入設置中,不勾選Read/Write,就無法正確顯示紋理的大小數字。 更進一步的問題是,使用Addressable打包的時候, 如…

《MySQL從入門到精通》

文章目錄 《MySQL從入門到精通》1. 基礎-SQL通用語法及分類2. 基礎-SQL-DDL-數據庫操作3. 基礎-SQL-DDL-表操作-創建&查詢4. 基礎-SQL-DDL-數據類型及案例4.1 數值類型4.2 字符串類型4.3 時間和日期類型 5. 基礎-SQL-DDL-表操作-修改&刪除5.1 DDL-表操作-修改5.2 DDL-表…

Vccaux_IO在DDR3接口中的作用

一、Vccaux_IO在DDR3接口中的作用 1.vccaux_io通常為FPGA的IO bank的輔助電源,用于支持特定電壓的IO標準 2.在DDR3接口中,FPGA的IO bank需要DDR3芯片的電壓(1.5v/1.35v)匹配 3.Vccaux_IO用于為FPGA的DDR3接口I/O Bank供電,其電壓值、噪聲和穩…

深入理解Apache Kafka

引言 在現代分布式系統架構中,中間件扮演著至關重要的角色,它作為系統各組件之間的橋梁,負責處理數據傳遞、消息通信、負載均衡等關鍵任務。在眾多中間件解決方案中,Apache Kafka憑借其高吞吐量、低延遲和可擴展性,已…

【NLP】 21. Transformer整體流程概述 Encoder 與 Decoder架構對比

1. Transformer 整體流程概述 Transformer 模型的整個處理流程可以概括為從自注意力(Self-Attention)到多頭注意力,再加上殘差連接、層歸一化、堆疊多層的結構。其核心思想是利用注意力機制對輸入進行并行計算,從而避免傳統 RNN …

路由器端口映射的意思、使用場景、及內網ip讓公網訪問常見問題和解決方法

一、端口映射是什么意思 端口映射是將內網主機的IP地址端口映射到公網中,內部機器提供相應的互聯網服務。當異地用戶訪問該這個端口時,會自動將請求映射到對應局域網內部的機器上。 二、端口映射常見使用場景 1,遠程訪問需求。當有…

GEO全域優化白皮書:盈達科技如何打造AI生態中的認知護城河

副標題:讓內容被AI優先引用,占領生成式引擎的“主屏入口” 一、GEO:生成式引擎時代的內容占位權之戰 隨著ChatGPT、Kimi、DeepSeek等生成式AI快速成為信息獲取的主流方式,搜索邏輯正在根本性改變:從“網頁排名”轉向“…

如何用DeepSeek大模型提升MySQL DBA工作效率?實戰案例解析

如何用DeepSeek大模型提升MySQL DBA工作效率?實戰案例解析 MySQL DBA(數據庫管理員)的工作涉及數據庫監控、SQL優化、故障排查、備份恢復等復雜任務,傳統方式依賴手動操作和經驗判斷,效率較低。而DeepSeek大模型可以結…

系統設計思維的討論

我們經常說自己熟悉了spring,能夠搭建起一個項目基本框架,并且在此之上進行開發,用戶or客戶提出需求碰到不會的百度找找就可以實現。干個四五年下一份工作就去面試架構師了,運氣好一些可能在中小公司真的找到一份架構師、技術負責…

項目部署-(二)Linux下SpringBoot項目自動部署

一、項目部署架構 二、項目部署環境 192.168.138.100(服務器A): -Nginx :部署前端項目、配置反向代理 -MySQL:主從復制結構中的主庫 192.168.138.101(服務器B): -JDK:運行Java項目 -Git:版本控制工具 -Maven:項目構建…

【LeetCode 熱題 100】哈希 系列

📁1. 兩數之和 本題就是將通過兩層遍歷優化而成的,為什么需要兩層遍歷,因為遍歷 i 位置時,不知道i-1之前的元素是多少,如果我們知道了,就可以通過兩數相加和target比較即可。 因為本題要求返回下標&#xf…

【Kubernetes基礎】--查閱筆記1

目錄 Kubernetes 是什么為什么要用 KubernetesKubernetes 概念MasterNodePodLabelReplication ControllerDeploymentHorizontal Pod AutoscalerStatefulSetService服務發現機制 JobVolumePersistent VolumeNamespaceConfigmap Kubernetes 是什么 Kubernetes是一個開放的開發平…

卷積神經網絡CNN到底在卷些什么?

來源: 卷積神經網絡(CNN)到底卷了啥?8分鐘帶你快速了解!_嗶哩嗶哩_bilibili卷積神經網絡(CNN)到底卷了啥?8分鐘帶你快速了解!共計2條視頻,包括:卷…

Axios 的 POST 請求:QS 處理數據的奧秘與使用場景解析

在現代前端開發中,Axios 已經成為了進行 HTTP 請求的首選庫之一,它的簡潔易用和強大功能深受開發者喜愛。當使用 Axios 進行 POST 請求時,我們常常會遇到一個問題:是否需要使用 QS 庫來處理請求數據?什么時候又可以不用…

java面試題帶答案2025最新整理

文章目錄 一、java面試題集合框架1. 請簡要介紹 Java 集合框架的體系結構2. ArrayList 和 LinkedList 的區別是什么3. HashMap 的工作原理是什么,它在 JDK 7 和 JDK 8 中有哪些不同4. 如何解決 HashMap 的線程安全問題5. TreeSet 是如何保證元素有序的 二、java面試…

4.B-樹

一、常見的查找方式 順序查找 O(N) 二分查找 O(logN)(要求有序和隨機訪問) 二叉搜索樹 O(N) 平衡二叉搜索樹(AVL樹和紅黑樹) O(logN) 哈希 O(1) 考慮效率和要求而言,正常選用 平衡二叉搜索樹 和 哈希 作為查找方式。 但這兩種結構適合用于…

CTF--shell

一、原題 (1)提示: $poc"a#s#s#e#r#t";$poc_1explode("#",$poc);$poc_2$poc_1[0].$poc_1[1].$poc_1[2].$poc_1[3].$poc_1[4].$poc_1[5]; $poc_2($_GET[s]) (2)原網頁:一片空白什么都…