HarmonyOS NEXT应用开发之元素超出List区域

介绍

本示例介绍在List组件内实现子组件超出容器边缘的布局样式的实现方法。

List组件clip属性默认为true,超出容器边缘的子组件会按照List的布局范围被裁剪。为此,可以在List组件内部添加一个占位的ListItem,以达到预期的布局效果。List占满整个窗口或者不可滚动的情况下,也可以在List外占位,同时设置List的clip属性为false达成同样的效果。

该布局效果多用于头像、列表子项标题等元素的突出显示。

效果图预览

使用说明

  • 上下滑动屏幕,可以查看整个列表。

实现步骤

  1. 通过设置负的margin值,移动组件位置,使其超出父组件范围。

    Image($r("app.media.io_user_portrait"))
    .width(80)
    .height(80)
    .margin({ top: -50, left: 15 })

  2. 在List内部使用ListItem占位,包住超出的区域。

    List() {
    ListItem().height(40).selectable(false) // 占位组件
    ListItem() { // 需要超出范围的组件
    Image($r("app.media.io_user_portrait"))
    .width(80)
    .height(80)
    .margin({ top: -50, left: 15 })
    }
    ...
    }

实现步骤(另一种方式)

  1. 通过设置负的margin值,移动组件位置,使其超出父组件范围。

    Image($r("app.media.io_user_portrait"))
    .width(80)
    .height(80)
    .margin({ top: -50, left: 15 })

  2. 在List组件外部使用Row占位,同时设置List.clip(false),允许滚动时上下溢出List组件的区域。

    Row().height(60) // 占位组件
    List() {
    ListItem() { // 需要超出范围的组件
    Image($r("app.media.io_user_portrait"))
    .width(80)
    .height(80)
    .margin({ top: -50, left: 15 })
    }
    ...
    }.clip(false)

高性能知识点

不涉及

工程结构&模块类型

复制代码
listitemoverflow                                // har类型
|---AboutMe.ets                                 // 页面布局实现页面

模块依赖

@ohos/routermodule(动态路由)

参考资料

List

clip

为了能让大家更好的学习鸿蒙(HarmonyOS NEXT)开发技术,这边特意整理了《鸿蒙开发学习手册》(共计890页),希望对大家有所帮助:https://qr21.cn/FV7h05

《鸿蒙开发学习手册》:

如何快速入门:https://qr21.cn/FV7h05

  1. 基本概念
  2. 构建第一个ArkTS应用
  3. ......

开发基础知识:https://qr21.cn/FV7h05

  1. 应用基础知识
  2. 配置文件
  3. 应用数据管理
  4. 应用安全管理
  5. 应用隐私保护
  6. 三方应用调用管控机制
  7. 资源分类与访问
  8. 学习ArkTS语言
  9. ......

基于ArkTS 开发:https://qr21.cn/FV7h05

  1. Ability开发
  2. UI开发
  3. 公共事件与通知
  4. 窗口管理
  5. 媒体
  6. 安全
  7. 网络与链接
  8. 电话服务
  9. 数据管理
  10. 后台任务(Background Task)管理
  11. 设备管理
  12. 设备使用信息统计
  13. DFX
  14. 国际化开发
  15. 折叠屏系列
  16. ......

鸿蒙开发面试真题(含参考答案):https://qr18.cn/F781PH

鸿蒙开发面试大盘集篇(共计319页):https://qr18.cn/F781PH

1.项目开发必备面试题

2.性能优化方向

3.架构方向

4.鸿蒙开发系统底层方向

5.鸿蒙音视频开发方向

6.鸿蒙车载开发方向

7.鸿蒙南向开发方向

腾讯T10级高工技术,安卓全套VIP课程全网免费送:https://qr21.cn/D2k9D5

相关推荐
梁山好汉(Ls_man)5 分钟前
鸿蒙_使用组件导航Navigation搭建应用框架
华为·harmonyos·鸿蒙·arkui
QQ676580089 分钟前
城市治理之河道污染识别 无人机河道污染巡检 塑料带识别 瓶子图像识别 深度学习垃圾识别第10384期
人工智能·深度学习·yolo·河道污染·无人机河道污染·瓶子图像·塑料袋识别
autumn200519 分钟前
Flutter 框架跨平台鸿蒙开发 - AR历史场景穿越
flutter·华为·ar·harmonyos
code_pgf28 分钟前
基于transformer的clip和blip之间的关系、原理、方法实现和直观可视化
人工智能·深度学习·transformer
AI_零食37 分钟前
开源鸿蒙跨平台Flutter开发:手账记事模板库应用
学习·flutter·华为·开源·harmonyos·鸿蒙
提子拌饭13342 分钟前
开源鸿蒙跨平台Flutter开发:家庭影像传承系统
flutter·华为·开源·harmonyos·鸿蒙
沃恩智慧43 分钟前
顶刊热门选题!PINN+LSTM,预测精度大幅提升!!
深度学习·机器学习·lstm
HwJack2044 分钟前
HarmonyOS NDK 开发:冲破 ArkUI 性能桎梏的“降维打击”
华为·harmonyos
李李李勃谦1 小时前
Flutter 框架跨平台鸿蒙开发 - 手工作品展示
flutter·华为·harmonyos
左手厨刀右手茼蒿1 小时前
Flutter 三方库 klutter 的鸿蒙化适配指南 - 掌握 Kotlin Multiplatform (KMP) 互操作技术、助力鸿蒙应用构建极致复用且高性能的跨端业务逻辑共享体系
flutter·harmonyos·鸿蒙·openharmony