当前位置: 首页 > news >正文

HarmonyOS ArkTS 骨架屏加载显示(二十五)

目录

    • 前言
    • 1、骨架屏代码显示
    • 2、代码中引用
    • 3、效果图展示

前言

所谓骨架屏,就是在页面进行耗时加载时,先展示的等待 UI, 以告知用户程序目前正在运行,稍等即可。 等待的UI大部分是 loading 转圈的弹窗,有的是自己风格的小动画。其实大同小异。而骨架屏无非也是一个等待的UI。基本是由各种灰色块组成,夹杂着一些代表特殊样式的其他浅颜色的色块。骨架屏的不用之处就在于这些灰色块的排列组合和真正展示出来的页面样式基本一致。因此骨架屏的展示除了告知用户程序正在加载外,还能让用户大概知道稍后将要展示的内容是什么,给了用户一些期待,从心理上,让用户更愿意等待一会。

1、骨架屏代码显示

/*** 骨架屏显示*/
@Component
export struct ArticleSkeletonView {build() {Row() {Column() {textArea(80, 80)}.margin({ right: 20 })Column() {textArea('60%', 20)textArea('50%', 20)}.alignItems(HorizontalAlign.Start).justifyContent(FlexAlign.SpaceAround).height('100%')}.padding(20).borderRadius(12).backgroundColor('#FFECECEC').height(120).width('100%').justifyContent(FlexAlign.SpaceBetween)}
}@Builder
function textArea(width: number | Resource | string = '100%', height: number | Resource | string = '100%') {Row().width(width).height(height).backgroundColor('#FFF2F3F4')
}

2、代码中引用

@Component
@Preview
export default  struct Index {@State message: string = '首页'webviewController: web_webview.WebviewController = new web_webview.WebviewController();@State simpleList: Array<number> = [1, 2, 3, 4, 5];build() {Row() {Column() {Text(this.message).fontSize(30).fontWeight(FontWeight.Bold)// Button('loadUrl')//   .onClick(() => {//     try {//       // 点击按钮时,通过loadUrl,跳转到www.example1.com//       this.webviewController.loadUrl('www.example.c1om');//     } catch (error) {//       console.error(`ErrorCode: ${error.code},  Message: ${error.message}`);//     }//   })// // 组件创建时,加载www.example.com// Web({ src: 'www.example.com', controller: this.webviewController })//ForEach(this.simpleList, (item: string) => {ArticleSkeletonView().margin({ top: 20 })}, (item: string) => item)}.width('100%')}.height('100%')}

3、效果图展示

在这里插入图片描述

http://www.lryc.cn/news/329068.html

相关文章:

  • Ruoyi-Cloud-Plus_使用Docker部署分布式微服务系统_环境准备_001---SpringCloud工作笔记200
  • RN封装的底部向上弹出的弹出层组件
  • 基于深度学习YOLOv8+PyQt5的水底海底垃圾生物探测器检测识别系统(源码+数据集+配置说明)
  • SpringBoot集成WebSocket实现简单的多人聊天室
  • 如何使用固定公网地址远程访问内网Axure RP生成的网站原型web页面
  • 蓝桥杯习题
  • AMS概念以及面试相关整理
  • Vmware下减小Ubuntu系统占用系统盘大小
  • 面试题-Elasticsearch集群架构和调优手段(超全面)
  • python基础练习题6
  • Chrome 插件各模块使用 Fetch 进行接口请求
  • 内存可见性
  • Android room 在dao中不能使用挂起suspend 否则会报错
  • 【stable diffusion扩散模型】一篇文章讲透
  • 数据链路层之信道:数字通信的桥梁与守护者
  • SQL109 纠错4(组合查询,order by..)
  • Spring Boot + Vue 实现文件导入导出功能
  • vue watch 深度监听
  • Qt源码调试步骤记录
  • 大数据面试英文自我介绍参考(万字长文)
  • 外包干了5天,技术退步明显.......
  • Docket常见的软件部署1
  • Qt源程序编译及错误问题解决
  • 作业练习(python)
  • Wireshark使用相关
  • 相机标定学习记录
  • CSS 滚动条样式修改
  • 谈谈配置中心?
  • 人工智能(pytorch)搭建模型25-基于pytorch搭建FPN特征金字塔网络的应用场景,模型结构介绍
  • JRT业务开发起步