| Name | Date | Size | #Lines | LOC | ||
|---|---|---|---|---|---|---|
| .. | - | - | ||||
| AppScope/ | 06-May-2025 | - | 35 | 32 | ||
| entry/ | 06-May-2025 | - | 1,804 | 1,644 | ||
| hvigor/ | 06-May-2025 | - | 8 | 8 | ||
| screenshots/Devices/ | 06-May-2025 | - | 3 | 2 | ||
| .gitignore | D | 06-May-2025 | 119 | 11 | 11 | |
| README_zh.md | D | 06-May-2025 | 5.2 KiB | 93 | 61 | |
| build-profile.json5 | D | 06-May-2025 | 1.1 KiB | 43 | 42 | |
| hvigorfile.ts | D | 06-May-2025 | 159 | 2 | 1 | |
| hvigorw | D | 06-May-2025 | 2.1 KiB | 64 | 55 | |
| hvigorw.bat | D | 06-May-2025 | 2.1 KiB | 78 | 59 | |
| oh-package.json5 | D | 06-May-2025 | 233 | 13 | 12 | |
| ohosTest.md | D | 06-May-2025 | 989 | 10 | 9 |
README_zh.md
1## 一多音乐典型场景 2 3### 介绍 4 5本示例展示了音乐"推荐"与"我的歌单" 两个Tab页签内容。 6 7* 推荐:采用[栅格](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-gridrow.md)组件、[List](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-list.md)组件、[Grid](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-grid.md)组件根据窗口断点进行自适应布局。 8* 我的歌单:通过使用[Grid](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-grid.md)组件实现网格布局与列表布局相互切换。 9 10本示例使用[一次开发多端部署](https://gitee.com/openharmony/docs/tree/master/zh-cn/application-dev/key-features/multi-device-app-dev)中介绍的自适应布局能力和响应式布局能力进行多设备(或多窗口尺寸)适配,主要通过组件提供窗口断点事件,保证应用在不同设备或不同窗口尺寸下可以正常显示。 11 12### 预览效果 13 14本示例在预览器中的效果: 15 16* 推荐页 17 18| sm设备 | md设备 | lg设备 | 19| ----------------------------------- | ----------------------------------- | ----------------------------------- | 20|  |  |  | 21 22* 我的歌单 23 24| sm设备 | md设备 | lg设备 | 25| ----------------------------------- | ----------------------------------- | ----------------------------------- | 26|  |  |  | 27 28使用说明: 29 301. 打开首页,在IDE编辑器中打开预览器查看预览效果。 312. 在预览器中开启窗口拖拽模式,拖动窗口变化,可以查看组件的响应式变化,如下图所示: 32 333. 手动自由拖拽窗口,将应用窗口在sm/md/lg三种设备形态下进行切换并查看预览效果。 34 35### 工程目录 36 37``` 38MultiMusic/entry/src/main/ets/ 39|---model 40| |---DataSummary.ets // 数据集合 41| |---DataType.ets // 数据类型 42|---pages 43| |---Index.ets // 首页 44|---common 45| |---BreakpointSystem.ets // 媒体查询 46| |---RecommendPage.ets // 推荐页 47| |---TitleBar.ets // 标题栏 48| |---UserSongList.ets // 歌单列表 49``` 50 51### 具体实现 52 53**标题栏** 54 55不同容器尺寸下,元素位置不固定,采用[GridRow](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-gridrow.md)组件进行栅格布局,在sm/md断点下,标题栏所有元素占两行,在lg断点下,所有元素只占一行。 56 57**轮播图** 58 59使用[Swiper](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-swiper.md)组件,通过动态设置[displaycount](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-swiper.md#displaycount8)属性,显示图片数量根据[窗口断点](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-gridrow.md#gridrowdirection%E6%9E%9A%E4%B8%BE%E8%AF%B4%E6%98%8E)进行自适应变化,在sm断点下显示一张图片,在md断点下显示两张图片,lg断点下通过if关键字切换成[Row](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-row.md)容器进行布局。 60 61**音乐分类** 62 63使用List组件的自带延伸布局能力,元素随容器组件尺寸变化显示或隐藏。 64 65**歌单列表/我的歌单** 66 67使用[Grid](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-grid.md)组件进行响应式布局,元素数量根据[窗口断点](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/arkui-ts/ts-container-gridrow.md#gridrowdirection%E6%9E%9A%E4%B8%BE%E8%AF%B4%E6%98%8E)进行自适应变化。 68 69### 相关权限 70 71不涉及。 72 73### 依赖 74 75不涉及 76 77### 约束与限制 78 791. 本示例仅支持在标准系统上运行。 802. 本示例已适配API version 10版本的SDK(4.0.10.10),镜像版本号:OpenHarmony 4.0.10.10。 813. 本示例需要使用DevEco Studio 4.0 Beta2 (构建版本:4.0.0.400,构建 2023年8月2日)及以上版本才可编译运行。 82 83### 下载 84 85如需单独下载本工程,执行如下命令: 86 87``` 88git init 89git config core.sparsecheckout true 90echo code/SuperFeature/MultiDeviceAppDev/MultiMusic/ > .git/info/sparse-checkout 91git remote add origin https://gitee.com/openharmony/applications_app_samples.git 92git pull origin master 93```