# MultiType **Repository Path**: openharmony-sig/MultiType ## Basic Information - **Project Name**: MultiType - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 19 - **Created**: 2022-04-16 - **Last Updated**: 2025-05-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MultiType ## 简介 > 更轻松、更灵活地为 List 创建多种类型布局 ## 效果展示 ## 下载安装 ```shell ohpm install @ohos/multitype ``` OpenHarmony ohpm 环境配置等更多内容,请参考[如何安装 OpenHarmony ohpm 包](https://gitee.com/openharmony-tpc/docs/blob/master/OpenHarmony_har_usage.md) ## 使用说明 ### MultiType引用及使用 ``` import {MultiTypeAdapter} from '@ohos/multitype' class itemsType { itemType: number = 0 id: number = 0 } //自定义item内容 @Builder MyListItem(arr: itemsType[], index: number) { Column() { Text('title: ' + arr[index].id).fontSize(16).padding({ left: 15, right: 15, top: 15 }) }.width('100%').alignItems((arr[index].itemType == 1) ? HorizontalAlign.Start : HorizontalAlign.End) } //页面中使用 build() { Column() { ... MultiTypeAdapter({ array: this.items, child: (arr: itemsType[], index: number) => { this.MyListItem(arr, index) } }) }.height('94%').width('100%') } ``` ## 接口说明 `MultiTypeAdapter({})` 参数1:array List的数据源 参数2:child Item的样式 ## 约束与限制 在下述版本验证通过: - DevEco Studio 版本: 4.1 Canary(4.1.3.317) - OpenHarmony SDK:API11 (4.1.0.36) ## 目录结构 ```` |---- MultiType | |---- entry # 示例代码文件夹 | |---- library # multiType库文件夹 | |----src |----main |----ets |----components/MainPage |----MultiTypeAdapter.ets #核心封装逻辑 | |---- index.ets # 对外接口 | |---- README.md # 安装使用方法 | |---- README_zh.md # 安装使用方法 ```` ## 贡献代码 使用过程中发现任何问题都可以提 [Issue](https://gitee.com/openharmony-sig/MultiType/issues) 给组件,当然,也非常欢迎发 [PR](https://gitee.com/openharmony-sig/MultiType/pulls)共建 。 ## 开源协议 本项目基于 [Apache License 2.0](https://gitee.com/openharmony-sig/MultiType/blob/master/LICENSE) ,请自由地享受和参与开源。