Fetch the repository succeeded.
更轻松、更灵活地为 List 创建多种类型布局
ohpm install @ohos/multitype
OpenHarmony ohpm 环境配置等更多内容,请参考如何安装 OpenHarmony ohpm 包
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的样式
在下述版本验证通过:
|---- MultiType
| |---- entry # 示例代码文件夹
| |---- multitype # multiType库文件夹
| |----src
|----main
|----ets
|----components/MainPage
|----MultiTypeAdapter.ets #核心封装逻辑
| |---- index.ets # 对外接口
| |---- README.md # 安装使用方法
使用过程中发现任何问题都可以提 Issue 给我们,当然,我们也非常欢迎你给我们发 PR 。
本项目基于 Apache License 2.0 ,请自由地享受和参与开源。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。