• Home
Name Date Size #Lines LOC

..--

AppScope/22-Oct-2025-3532

entry/22-Oct-2025-1,7451,606

hvigor/22-Oct-2025-3836

screenshots/device/22-Oct-2025-

.gitignoreD22-Oct-2025133 1212

README_zh.mdD22-Oct-20252.6 KiB7849

build-profile.json5D22-Oct-20251.3 KiB5756

code-linter.json5D22-Oct-20251.4 KiB4746

hvigorfile.tsD22-Oct-2025848 225

oh-package.json5D22-Oct-2025814 2624

README_zh.md

1# 页面布局和连接
2
3### 介绍
4
5本示例构建食物分类列表页面和食物详情页,包含:
6
71.List布局:创建食物数据模型,ForEach循环渲染ListItem。
8
92.Grid布局:展示食物分类信息,创建Tabs页签展示不同分类的食物。
10
113.路由机制:router接口、Navigator和页面间数据传递。
12
13### 效果预览
14
15| 主页                                        |详情页|列表页|
16|-------------------------------------------|--------------------------------------|--------------------------------------|
17| ![](screenshots/device/FoodCategory.jpeg) |![](screenshots/device/FoodDetail.png)| ![](screenshots/device/FoodList.png) |
18
19使用说明
20
211.点击首页的切换按钮,可切换List和Grid布局。
22
232.点击食物单元,可跳转到食物详情页。
24
25### 工程目录
26```
27entry/src/main/ets/MainAbility
28|---model
29|   |---FoodData.ets                        // 页面数据初始化
30|   |---FoodDataModel.ets                   // 数据渲染
31|---pages
32|   |---app.ets                             // 首页
33|   |---FoodCategoryList.ets                // 数据列表展示
34|   |---FoodDetail.ets                      // 数据详情展示
35```
36
37### 具体实现
38
39* 创建定义数据类型文件,源码参考:[FoodData.ets](entry/src/main/ets/model/FoodData.ets)
40
41* List布局:创建食物数据模型,ForEach循环渲染ListItem。
42
43* Grid布局:展示食物分类信息,创建Tabs页签展示不同分类的食物。
44
45* 路由机制:[@ohos.router接口](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/js-apis-router.md)、Navigator和页面间数据传递。
46
47#### 相关概念
48
49List:列表包含一系列相同宽度的列表项。适合连续、多行呈现同类数据,例如图片和文本。
50
51Grid:网格容器,由“行”和“列”分割的单元格所组成,通过指定“项目”所在的单元格做出各种各样的布局。
52
53### 相关权限
54
55不涉及。
56
57### 依赖
58
59不涉及。
60
61### 约束与限制
62
631.本示例仅支持在标准系统上运行。
64
652.本示例已适配API version 14版本SDK,版本号:5.0.2.123。
66
673.本示例需要使用DevEco Studio 5.0.2 Release (Build Version: 5.0.7.210 构建 2025年2月11日)及以上版本才可编译运行。
68
69### 下载
70
71如需单独下载本工程,执行如下命令:
72```
73git init
74git config core.sparsecheckout true
75echo /code/UI/ArkTsComponentCollection/DefiningPageLayoutAndConnection > .git/info/sparse-checkout
76git remote add origin https://gitee.com/openharmony/applications_app_samples.git
77git pull origin master
78```