
harmonyos5.0
文章平均质量分 75
蒸糕笑QAQ
这个作者很懒,什么都没留下…
展开
-
鸿蒙开发0基础【选项卡 (Tabs)】ArkUI
当页面信息较多时,为了让用户能够聚焦于当前显示的内容,需要对页面内容进行分类,提高页面空间利用率。\[Tabs]组件可以在一个页面内快速实现视图内容的切换,一方面提升查找信息的效率,另一方面精简用户单次获取到的信息量。原创 2025-04-30 21:40:34 · 569 阅读 · 0 评论 -
鸿蒙开发0基础【创建轮播 (Swiper)】ArkUI
[Swiper]组件提供滑动轮播显示的能力。Swiper本身是一个容器组件,当设置了多个子组件后,可以对这些子组件进行轮播显示。通常,在一些应用首页显示推荐的内容时,需要用到轮播显示的能力。原创 2025-04-30 20:32:58 · 628 阅读 · 0 评论 -
鸿蒙开发0基础【创建瀑布流(WaterFlow)】ArkUI
[瀑布流]常用于展示图片信息,尤其在购物和资讯类应用中。原创 2025-04-30 19:31:12 · 577 阅读 · 0 评论 -
鸿蒙开发0基础【创建网格 (Grid/GridItem)】ArkUI
网格布局是由“行”和“列”分割的单元格所组成,通过指定“项目”所在的单元格做出各种各样的布局。网格布局具有较强的页面均分能力,子组件占比控制能力,是一种重要自适应布局,其使用场景有九宫格图片展示、日历、计算器等。ArkUI提供了[Grid]容器组件和子组件[GridItem],用于构建网格布局。Grid用于设置网格布局相关参数,GridItem定义子组件相关特征。Grid组件支持使用[条件渲染]、[循环渲染]、[懒加载]等方式生成子组件。原创 2025-04-30 16:47:13 · 878 阅读 · 0 评论 -
鸿蒙开发0基础【创建列表 (List)】ArkUI
列表是一种复杂的容器,当列表项达到一定数量,内容超过屏幕大小时,可以自动提供滚动功能。它适合用于呈现同类数据类型或数据类型集,例如图片和文本。在列表中显示数据集合是许多应用程序中的常见要求(如通讯录、音乐列表、购物清单等)。使用列表可以轻松高效地显示结构化、可滚动的信息。通过在[List]组件中按垂直或者水平方向线性排列子组件[ListItemGroup]或[ListItem],为列表中的行或列提供单个视图,或使用[循环渲染]迭代一组行或列,或混合任意数量的单个视图和ForEach结构,构建一个列表。L原创 2025-04-30 15:41:52 · 830 阅读 · 0 评论 -
鸿蒙开发0基础【媒体查询 (@ohos.mediaquery)】ArkUI
[媒体查询]作为响应式设计的核心,在移动设备上应用十分广泛。媒体查询可根据不同设备类型或同设备不同状态修改应用的样式。媒体查询常用于下面两种场景:原创 2025-04-30 14:38:01 · 928 阅读 · 0 评论 -
鸿蒙开发0基础【栅格布局 (GridRow/GridCol)】ArkUI
栅格布局是一种通用的辅助定位工具,对移动设备的界面设计有较好的借鉴作用。原创 2025-04-30 13:36:09 · 898 阅读 · 0 评论 -
鸿蒙开发0基础【相对布局 (RelativeContainer)】ArkUI
在应用的开发过程中,经常需要设计复杂界面,此时涉及到多个相同或不同组件之间的嵌套。如果布局组件嵌套深度过深,或者嵌套组件数过多,会带来额外的开销。如果在布局的方式上进行优化,就可以有效的提升性能,减少时间开销。原创 2025-04-29 22:03:07 · 926 阅读 · 0 评论 -
鸿蒙开发0基础【弹性布局 (Flex)】ArkUI
弹性布局([Flex])提供更加有效的方式对容器中的子元素进行排列、对齐和分配剩余空间。常用于页面头部导航栏的均匀分布、页面框架的搭建、多行数据的排列等。原创 2025-04-29 20:18:56 · 819 阅读 · 0 评论 -
鸿蒙开发0基础【层叠布局 (Stack)】ArkUI
层叠布局(StackLayout)用于在屏幕上预留一块区域来显示组件中的元素,提供元素可以重叠的布局。层叠布局通过[Stack]容器组件实现位置的固定定位与层叠,容器中的子元素依次入栈,后一个子元素覆盖前一个子元素,子元素可以叠加,也可以设置位置。原创 2025-04-29 19:17:41 · 110 阅读 · 0 评论 -
鸿蒙开发0基础【线性布局 (Row/Column)】ArkUI
线性布局(LinearLayout)是开发中最常用的布局,通过线性容器[Row]和[Column]构建。线性布局是其他布局的基础,其子元素在线性方向上(水平方向和垂直方向)依次排列。线性布局的排列方向由所选容器组件决定,Row容器内子元素按照水平方向排列,Column容器内子元素按照垂直方向排列。根据不同的排列方向,开发者可选择使用Row或Column容器创建线性布局。原创 2025-04-29 17:11:24 · 662 阅读 · 0 评论 -
鸿蒙开发0基础【布局概述】ArkUI
组件按照布局的要求依次排列,构成应用的页面。在声明式UI中,所有的页面都是由自定义组件构成,开发者可以根据自己的需求,选择合适的布局进行页面开发。原创 2025-04-29 16:09:21 · 624 阅读 · 0 评论 -
鸿蒙开发0基础【LazyForEach:数据懒加载】ArkUI
LazyForEach从提供的数据源中按需迭代数据,并在每次迭代过程中创建相应的组件。当在滚动容器中使用了LazyForEach,框架会根据滚动容器可视区域按需创建组件,当组件滑出可视区域外时,框架会进行组件销毁回收以降低内存占用。原创 2025-04-29 13:37:21 · 799 阅读 · 0 评论 -
鸿蒙开发0基础【ForEach:循环渲染】ArkUI
ForEach接口基于数组类型数据来进行循环渲染,需要与容器组件配合使用,且接口返回的组件应当是允许包含在ForEach父容器组件中的子组件。例如,ListItem组件要求ForEach的父容器组件必须为[List组件]。说明从API version 9开始,该接口支持在ArkTS卡片中使用。原创 2025-04-28 22:00:43 · 916 阅读 · 0 评论 -
鸿蒙开发0基础【if/else:条件渲染】ArkUI
ArkTS提供了渲染控制的能力。条件渲染可根据应用的不同状态,使用if、else和else if渲染对应状态下的UI内容。原创 2025-04-28 20:52:58 · 706 阅读 · 0 评论 -
鸿蒙开发0基础【V1->V2迁移指导】ArkUI
ArkUI状态管理的主要职责是:负责将可观察数据的变化自动同步到UI界面,实现数据驱动的UI刷新,使开发者能更加够专注于UI界面的实现和设计。原创 2025-04-28 19:33:11 · 521 阅读 · 0 评论 -
鸿蒙开发0基础【自定义组件混用场景】ArkUI
在@Component装饰的自定义组件中(后续称V1的自定义组件),我们为开发者提供了与之对应的状态变量装饰器(后续称V1的装饰器),例如:@State、@Prop、@Link等,然而状态管理V1(简称V1)对于嵌套类的观测存在诸多限制,例如需要开发者通过@ObjectLink不断拆解嵌套类才能使得深层次数据具备观测能力。为此,在API12中为开发者提供了一套全新的状态管理V2(简称V2),开发者可以声明@ComponentV2装饰的自定义组件(后续称V2的自定义组件)并搭配一套全新的装饰器去使用(后续称V原创 2025-04-28 17:10:01 · 461 阅读 · 0 评论 -
鸿蒙开发0基础【MVVM模式(状态管理V2)】ArkUI
在应用开发中,UI的更新需要随着数据状态的变化进行实时同步,而这种同步往往决定了应用程序的性能和用户体验。为了解决数据与UI同步的复杂性,ArkUI采用了Model-View-ViewModel(MVVM)架构模式。MVVM将应用分为Model、View和ViewModel三个核心部分,实现数据、视图与逻辑的分离。通过这种模式,UI可以随着状态的变化自动更新,无需手动处理,从而更加高效地管理数据和视图的绑定与更新。原创 2025-04-28 16:00:23 · 835 阅读 · 0 评论 -
鸿蒙开发0基础【makeObserved接口:将非观察数据变为可观察数据】ArkUI
为了将普通不可观察数据变为可观察数据,开发者可以使用[makeObserved接口]原创 2025-04-28 14:44:43 · 250 阅读 · 0 评论 -
鸿蒙开发0基础【getTarget接口:获取状态管理框架代理前的原始对象】ArkUI
为了获取状态管理框架代理前的原始对象,开发者可以使用[getTarget接口]原创 2025-04-28 13:31:58 · 782 阅读 · 0 评论 -
鸿蒙开发0基础【Repeat:可复用的循环渲染】ArkUI
Repeat基于数组类型数据来进行循环渲染,一般与容器组件配合使用。Repeat组件包含两种模式:**non-virtualScroll模式**和**virtualScroll模式**。原创 2025-04-27 21:56:40 · 644 阅读 · 0 评论 -
鸿蒙开发0基础【自定义组件冻结功能】ArkUI
当@ComponentV2装饰的自定义组件处于非激活状态时,状态变量将不响应更新,即@Monitor不会调用,状态变量关联的节点不会刷新。通过freezeWhenInactive属性来决定是否使用冻结功能,不传参数时默认不使用。支持的场景有:页面路由,TabContent,Navigation。原创 2025-04-27 20:53:35 · 751 阅读 · 0 评论 -
鸿蒙开发0基础【!!语法:双向绑定】ArkUI
在状态管理V1中使用[$$]用于系统组件双向绑定。在状态管理V2中,提供了归一处理,提供!!语法糖作为统一处理双向绑定语法。原创 2025-04-27 19:31:13 · 336 阅读 · 0 评论 -
鸿蒙开发0基础【PersistenceV2: 持久化储存UI状态】ArkUI
为了增强状态管理框架对持久化存储UI的能力,开发者可以使用PersistenceV2存储持久化的数据。PersistenceV2是应用程序中的可选单例对象。此对象的作用是持久化存储UI相关的数据,以确保这些属性在应用程序重新启动时的值与应用程序关闭时的值相同。原创 2025-04-27 17:42:16 · 486 阅读 · 0 评论 -
鸿蒙开发0基础【AppStorageV2: 应用全局UI状态存储】ArkUI
为了增强状态管理框架对应用全局UI状态变量存储的能力,开发者可以使用AppStorageV2存储应用全局UI状态变量数据。AppStorageV2是提供状态变量在应用级全局共享的能力,开发者可以通过connect绑定同一个key,进行跨ability的数据共享。原创 2025-04-27 15:42:34 · 379 阅读 · 0 评论 -
鸿蒙开发0基础【@Type装饰器:标记类属性的类型】ArkUI
为了实现序列化类时不丢失属性的复杂类型,开发者可以使用@Type装饰器装饰类属性。@Type的目的是标记类属性,配合PersistenceV2使用,防止序列化时类丢失。原创 2025-04-27 14:38:34 · 240 阅读 · 0 评论 -
鸿蒙开发0基础【@Computed装饰器:计算属性】ArkUI
@Computed装饰器:计算属性,在被计算的值变化的时候,只会计算一次。主要应用于解决UI多次重用该属性从而重复计算导致的性能问题。原创 2025-04-27 13:35:55 · 762 阅读 · 0 评论 -
鸿蒙开发0基础【@Monitor装饰器:状态变量修改监听】ArkUI
为了增强状态管理框架对状态变量变化的监听能力,开发者可以使用@Monitor装饰器对状态变量进行监听。原创 2025-04-26 21:55:27 · 452 阅读 · 0 评论 -
鸿蒙开发0基础【@Provider装饰器和@Consumer装饰器:跨组件层级双向同步】ArkUI
@Provider和@Consumer用于跨组件层级数据双向同步,可以使得开发者不用拘泥于组件层级。原创 2025-04-26 20:40:44 · 795 阅读 · 0 评论 -
鸿蒙开发0基础【@Event装饰器:规范组件输出】ArkUI
为了实现子组件向父组件要求更新@Param装饰变量的能力,开发者可以使用@Event装饰器。使用@Event装饰回调方法是一种规范,表明子组件需要传入更新数据源的回调。原创 2025-04-26 19:31:13 · 222 阅读 · 0 评论 -
鸿蒙开发0基础【@Once:初始化同步一次】ArkUI
为了实现仅从外部初始化一次、不接受后续同步变化的能力,开发者可以使用@Once装饰器搭配@Param装饰器使用。原创 2025-04-26 17:37:46 · 276 阅读 · 0 评论 -
鸿蒙开发0基础【@Param:组件外部输入】ArkUI
为了增强子组件接受外部参数输入的能力,开发者可以使用@Param装饰器。原创 2025-04-26 16:13:29 · 829 阅读 · 0 评论 -
鸿蒙开发0基础【@Local装饰器:组件内部状态】ArkUI
为了实现对@ComponentV2装饰的自定义组件中变量变化的观测,开发者可以使用@Local装饰器装饰变量原创 2025-04-26 14:43:55 · 589 阅读 · 0 评论 -
鸿蒙开发0基础【@ComponentV2装饰器:自定义组件】ArkUI
为了在自定义组件中使用V2版本状态变量装饰器的能力,开发者可以使用@ComponentV2装饰器装饰自定义组件。原创 2025-04-26 13:34:07 · 158 阅读 · 0 评论 -
鸿蒙开发0基础【@ObservedV2装饰器和@Trace装饰器:类属性变化观测】ArkUI
为了增强状态管理框架对类对象中属性的观测能力,开发者可以使用@ObservedV2装饰器和@Trace装饰器装饰类以及类中的属性。@ObservedV2和@Trace提供了对嵌套类对象属性变化直接观测的能力,是状态管理V2中相对核心的能力之一。原创 2025-04-25 22:19:01 · 293 阅读 · 0 评论 -
鸿蒙开发0基础【状态管理合理使用开发】ArkUI
由于对状态管理当前的特性并不了解,许多开发者在使用状态管理进行开发时会遇到UI不刷新、刷新性能差的情况。对此,本篇将从两个方向,对一共五个典型场景进行分析,同时提供相应的正例和反例,帮助开发者学习如何合理使用状态管理进行开发。原创 2025-04-25 21:18:37 · 800 阅读 · 0 评论 -
鸿蒙开发0基础【状态管理优秀实践】ArkUI
为了帮助应用程序开发人员提高其应用程序质量,特别是在高效的状态管理方面。本章节面向开发者提供了多个在开发ArkUI应用中常见的低效开发的场景,并给出了对应的解决方案。此外,还提供了同一场景下,推荐用法和不推荐用法的对比和解释说明,更直观地展示两者区别,从而帮助开发者学习如何正确地在应用开发中使用状态变量,进行高性能开发。原创 2025-04-25 19:32:52 · 871 阅读 · 0 评论 -
鸿蒙开发0基础【MVVM模式】ArkUI
当开发者掌握了状态管理的基本概念后,往往想开发一款自己的应用。然而,如果在应用开发初期未能精心规划项目结构,随着项目的不断扩展和复杂化,状态变量的增多将导致组件间关系变得错综复杂。此时,开发任何新功能都可能引起连锁反应,维护成本也会增加。为此,本文旨在介绍MVVM模式以及ArkUI的UI开发模式与MVVM的关系,指引开发者如何去设计自己的项目结构,从而在产品迭代和升级时,能更容易的去开发和维护原创 2025-04-25 17:01:20 · 995 阅读 · 0 评论 -
鸿蒙开发0基础【自定义组件冻结功能】ArkUI
自定义组件冻结功能专为优化复杂UI页面的性能而设计,尤其适用于包含多个页面栈、长列表或宫格布局的场景。在这些情况下,当状态变量绑定了多个UI组件,其变化可能触发大量UI组件的刷新,进而导致界面卡顿和响应延迟。为了提升这类负载UI界面的刷新性能,开发者可以选择尝试使用自定义组件冻结功能。原创 2025-04-25 15:38:39 · 757 阅读 · 0 评论 -
鸿蒙开发0基础【@Track装饰器:class对象属性级更新】ArkUI
@Track应用于class对象的属性级更新。@Track装饰的属性变化时,只会触发该属性关联的UI更新。原创 2025-04-25 14:32:31 · 275 阅读 · 0 评论