HarmonyOS NEXT倉頡開發語言實戰案例:小而美的旅行App

大家周末好,本文分享一個小而美的旅行app首頁,效果圖如下:

很顯然這個頁面還是使用List容器,頁面兩側有統一的邊距,我們可以在List容器統一設置:

List(space:20){
}
.padding(left:14,right:14,top:62)
.width(100.percent)
.height(100.percent)
.backgroundColor(0xF6F9FF)

列表第一行個人信息部分比較簡單,橫向布局,對齊方式為兩端對齊,具體代碼如下:

Row{Column(4){Text('llona').fontSize(17).fontColor(0x42436A)Text('Summer time, let’s book a flight for vacation').fontColor(0x8D91A2).fontSize(14)}.constraintSize( maxWidth: 60.percent).alignItems(HorizontalAlign.Start)Image(@r(app.media.lx_icon)).width(55).height(55)
}
.width(100.percent)
.justifyContent(FlexAlign.SpaceBetween)

第二行相同的兩端對齊,內容更加簡單:

Row{Row{Image(@r(app.media.lx_cup)).height(21).width(21).margin(left:14)Text('1130 pts').fontColor(0X42436A).fontSize(15).margin(left:14)}.width(168).height(49).backgroundColor(Color.WHITE).alignItems(VerticalAlign.Center).borderRadius(4)Row{Image(@r(app.media.lx_wallet)).height(21).width(21).margin(left:14)Text('$ 4600').fontColor(0X42436A).fontSize(15).margin(left:14)}.width(168).height(49).backgroundColor(Color.WHITE).alignItems(VerticalAlign.Center).borderRadius(4)
}
.width(100.percent)
.justifyContent(FlexAlign.SpaceBetween)

功能列表部分有些難度,我們要在List容器中嵌套網格列表,也就是Grid,這是一個2行4列的網格,大家要注意Grid屬性的設置和foreach的使用:

Grid {ForEach(lxList, itemGeneratorFunc: {item:LXItem,tag:Int64 =>GridItem{Column{Image(item.getImg()).width(52).height(52)Text(item.getTitle()).fontColor(0x6e6e6e).fontSize(15)}.height(80)}})
}
.width(100.percent)
.columnsTemplate('1fr 1fr 1fr 1fr')
.rowsTemplate('1fr 1fr')
.columnsGap(12)
.rowsGap(12)
.height(200)

最后一列是帶有標題的,我們已經多次見過,對于這種三個元素的對齊方式有多種實現方法,今天就簡單實用Row和Column實現:

ListItemGroup(ListItemGroupParams(header:{=>bind(this.itemHead,this)('Recommend')})){ListItem{Row(15){Image(@r(app.media.lx_f1)).width(142).height(185)Column{Image(@r(app.media.lx_f2)).width(100.percent).height(83)Image(@r(app.media.lx_f3)).width(100.percent).height(83)}.height(185).layoutWeight(1).justifyContent(FlexAlign.SpaceBetween)}.width(100.percent).height(185)}
}

旅行app的主要內容就是這些,感謝閱讀。##HarmonyOS語言##倉頡##休閑娛樂#

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

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

相關文章

Python銀行管理系統01升級(適合初學者)

目錄 框架如下: 1. Account類 - 賬戶數據模型 2. Bank類 - 銀行業務邏輯 3. BankApp類 - 圖形用戶界面 關鍵概念解析(適合初學者) 1. 面向對象編程(OOP)概念 2. Tkinter GUI編程基礎 3. 數據持久化 4. 輸入驗證 學習建議 系統功能概覽 完整代碼: 在Python銀行…

華為防火墻雙向NAT實驗

如圖所示, 企業內網有一臺Server2,通過在FW1上配置nat server,將Server2的www端口映射到了公網; 實驗環境中,內網和外網都使用外網的server1提供的DNS服務,在DNS服務器上添加A記錄,www.baidu.c…

前端路由的基石:深度剖析 Hash 與 History 模式的本質差異與實戰抉擇

在單頁面應用(SPA)統治現代Web開發的今天,前端路由已成為構建流暢用戶體驗的核心技術。而hash和history作為兩種主流實現方案,其設計理念和技術細節的差異直接影響著應用架構的選擇。本文將深入解析二者的技術本質,通過…

微機系統 - 緒論

緒論: 一:微處理器,微型計算機和微型計算機系統: 分類: 按照系統結構和基本工作原理.計算機分為5大部分:運算器,控制器,存儲器,輸入設備,輸出設備 按照體積,性能和價格分5類:巨型機,大型機,中型機,小型機,微型計算機(單板機,單片機) 微型計算機的特點:集成度高,體積小,重量輕…

基于Java+Springboot的寵物健康咨詢系統

源碼編號:S564 源碼名稱:基于Springboot的寵物健康咨詢系統 用戶類型:多角色,用戶、顧問、管理員 數據庫表數量:12 張表 主要技術:Java、Vue、ElementUl 、SpringBoot、Maven 運行環境:Win…

SpringBoot+MySQL寵物貓店管理系統

概述 基于SpringBootMySQL開發的寵物貓店管理系統完整源碼。該系統功能完善,包含前后臺完整功能模塊,代碼規范易于二次開發,是學習SpringBoot項目實戰的優秀范例。 主要內容 前臺功能展示 系統前臺設計簡潔實用,主要包含以下核…

UE5 - 制作《塞爾達傳說》中林克的技能 - 16 - 遙控炸彈(一)

讓我們繼續《塞爾達傳說》中林克技能的制作!!! 本章節的核心目標:素材導入與遙控炸彈的外觀 先讓我們看一下完成后的效果: 基本流程:素材準備->C類開發->藍圖配置->場景部署 1.素材準備&#xff1…

HTTP中常見的Content-Type

Content-Type,也稱為互聯網媒體類型或MIME類型,是HTTP協議中的一個頭部字段,用于指定處理請求和響應中的媒體類型信息。它告訴服務器如何處理請求的數據,同時也指導客戶端(通常是瀏覽器)如何解析響應的數據…

Android11 wifi開啟源碼分析

目錄 一、APP層源碼分析 1.1、尋找頁面activity 1.2、尋找頁面開關按鈕布局 二,framework層代碼分析 2.1 開啟wifi入口 2.2 WiFiNative 三,HAL層代碼分析 這段時間擼了WIFI開啟流程源碼,本著前人栽樹后人乘涼的原則,有志于…

R語言使用nonrandom包進行傾向評分匹配

傾向評分匹配(Propensity Score Matching,簡稱PSM)是一種統計學方法,用于處理觀察研究(Observational Study)的數據,在SCI文章中應用非常廣泛。在觀察研究中,由于種種原因&#xff0…

LeetCode Hot 100 找到字符串中所有字母異位詞

給定兩個字符串 s 和 p,找到 s 中所有 p 的 異位詞 的子串,返回這些子串的起始索引。不考慮答案輸出的順序。 示例 1: 輸入: s "cbaebabacd", p "abc" 輸出: [0,6] 解釋: 起始索引等于 0 的子串是 "cba", 它是 "a…

關于廬山派多視頻層(layer)和bind_layer的應用

嘉立創分了適配層和OSD(我稱它為圖片層)顧名思義,一個是能顯示視頻流到LCD屏幕,一個是只能顯示照片,也就是你可以對不同層進行操作而不影響其他層,解決的場景就是用于你畫了一個正方形在照片上,…

多傳感器標定簡介

目錄 標定內容及方法 雷達內參標定 IMU內參標定 編碼器內參標定 相機內參標定 雷達和相機外參標定 多雷達外參標定 手眼標定 融合中標定 總結 連續時間 標定內容及方法 雷達內參標定 1) 目的 由于安裝原因,線束之間的夾角和設計不一致,會導致…

day46/60

浙大疏錦行 DAY 46 通道注意力(SE注意力) 知識點回顧: 不同CNN層的特征圖:不同通道的特征圖什么是注意力:注意力家族,類似于動物園,都是不同的模塊,好不好試了才知道。通道注意力:模型的定義和插…

提升創作效率:輕松調用固定素材與模板

日常工作和生活中,我們經常需要復制粘貼不同類型的數據,如文本、圖片、文件等。使用剪切板管理工具可以快速訪問之前復制的內容,而無需反復切換應用進行復制操作。 這款綠色便攜版應用,無需安裝,雙擊即開,…

【C++】組合模式

目錄 一、模式核心概念與結構二、C 實現示例:文件系統三、組合模式的關鍵特性四、應用場景五、組合模式與其他設計模式的關系六、C 標準庫中的組合模式應用七、優缺點分析八、實戰案例:圖形編輯器九、實現注意事項如果這篇文章對你有所幫助,渴…

C++包管理工具:conan2持續集成 (CI) 教程

1.持續集成 (CI) ? 這是一個高級主題,需要具備 Conan 的基礎知識。請先閱讀并練習用戶教程。本節面向設計和實施涉及 Conan 包的生產 CI 管道的 DevOps 和構建工程師。如果不是這種情況,您可以跳過本節。 持續集成 (CI) 對不同用戶和組織有不同的含義…

免費SSL證書一鍵申請與自動續期

免費SSL證書申請與自動續期教程 本文介紹如何通過樂此加密(www.letsencrypt.top) 實現免費SSL證書一鍵配置和自動續期 一、準備工作 服務器要求 Linux 系統(推薦 Ubuntu/CentOS)已安裝 curl 和 crontab擁有 sudo 權限的用戶 域名驗證 確保域…

【NLP】自然語言項目設計

目錄 項目簡介 要求 需要考慮的問題 硬件需求和環境配置 n卡驅動配置 以cuda11.8 版本為例 下載對應的cudnn(version11) 安裝GPU版本的torch 安裝gpu版本的TensorFlow 檢查cuda安裝情況 項目簡介 訓練一個模型,實現歌詞仿寫生成 任務類型:文本…

設計模式:觀察者模式 (Observer) 案例詳解

目錄 一、引言:為什么需要觀察者模式? 二、觀察者模式的核心原理 1. 角色劃分 2. 類圖關系 三、經典案例解析 案例1:天氣監測系統 案例2:股票價格監控系統 案例3:MVC架構中的模型-視圖分離 案例4:J…