登录社区云,与社区用户共同成长
邀请您加入社区
如大家所知,List容器是一种基于双向链表实现的动态数据结构,支持在任意位置快速插入或删除元素,同时保持常数时间复杂度。其底层通过节点间的指针链接实现数据存储,节点可动态生成且存储空间可动态分配。
本文总结了TypeScript和鸿蒙系统的常用容器类型及使用场景。主要包括标准集合容器(Array、Set、Map、WeakSet/WeakMap)和鸿蒙特有容器(LinkedList、ArrayList、HashMap/TreeMap等),详细说明了它们的创建方式、常用操作和性能特点。文章还对比了不同容器在插入、访问、查找和删除等方面的性能差异,并提供了容器间转换方法和实际应用示例(如缓存数据、
本文介绍了在鸿蒙开发中实现Scroll容器嵌套多组件流畅滚动交互的方案。通过父容器Scroll统一管理Web和List组件的滚动偏移量,解决了父子滚动手势冲突问题。主要技术点包括:1)禁用子组件(Web、List)的滚动手势;2)通过Scroll.onScrollFrameBegin()实时获取滚动偏移量;3)根据Web和List的滚动边界状态,智能派发偏移量给相应子组件。该方案适用于新闻浏览等需
用stepper组件实现分步,再创建 Toggle 组件实现选择显示功能,再使用 Select 组件实现改变选中值动态修改字体颜色或大小。在本场景中,开发者可以在界面上点击选择并实时显示选择结果,点击下一步按钮后可动态修改页面的字体颜色和字体大小。stepper分别添加finish,change,next,back,skip事件。重新设置index属性值时要先清除index的值再重新设置,否则检测
创建 Input 组件,分别设置type属性为checkbox(多选框)和radio(单选框),再使用form组件的onsubmit和onreset事件实现表单数据的提交与重置。为form组件添加click-effect属性,实现点击表单后的缩放效果,click-effect枚举值请参考 通用属性。通过为form添加background-color和border属性,来设置表单的背景颜色和边框。为
用tabs、tab-bar和tab-content实现点击切换功能,再定义数组,设置属性。使用change事件改变数组内的属性值实现变色及下划线的显示。tabs是一种常见的界面导航结构。开发者可以为tabs添加change事件,实现页签切换后显示当前页签索引的功能。在本场景中,开发者可以点击标签切换内容,选中后标签文字颜色变红,并显示下划线。在pages/index目录下的hml文件中创建一个ta
Vector依据泛型定义,要求存储位置是一片连续的内存空间,初始容量大小为10,并支持动态扩容,每次扩容大小为原始容量的2倍。Deque依据泛型定义,要求存储位置是一片连续的内存空间,其初始容量大小为8,并支持动态扩容,每次扩容大小为原始容量的2倍。ArrayList依据泛型定义,要求存储位置是一片连续的内存空间,初始容量大小为10,并支持动态扩容,每次扩容大小为原始容量的1.5倍。Queue依据
本文系统介绍了主流容器类库的核心特性与使用场景。线性容器包括ArrayList(动态数组,适合随机访问)、LinkedList(双向链表,适合频繁增删)和Deque(双端队列);非线性容器涵盖HashMap(哈希表)和TreeSet(红黑树集合)。通过性能对比图表指导容器选择,详细说明各容器的API用法,并给出LRU缓存实现等高级应用示例。最后总结最佳使用场景:ArrayList适合高频读取,Li
当系统资源不足时,系统会通过多种方式从应用中回收内存,必要时会完全停止应用,从而释放内存用于执行关键任务。为了进一步保持系统内存的平衡,避免系统停止用户的应用进程,可以在AbilityStage中的onMemoryLevel()生命周期回调中订阅系统内存的变化情况,释放不必要的资源。打开MyAbilityStage.ets文件,导入AbilityStage的依赖包,自定义类继承AbilitySta
对于组件的尺寸,若子组件某个方向上设置两个或以上 alignRules 时最好不设置此方向尺寸大小,否则对齐规则确定的组件尺寸与开发者设置的尺寸可能产生冲突。比如某个组件在垂直方向设置了 top 和 bottom 约束,那么在实际的开发过程中就不要再次设置该组件的高度。我们可以结合 Column 和 Row 容器实现上面效果,但是今天主要讲下 RelativeContainer 相对布局容器,这有
是华为鸿蒙系统中用于管理阶段组件的生命周期、资源分配和进程的组件容器。每个阶段都有一个 AbilityStage 实例,它负责管理该阶段的组件生命周期、资源分配和进程管理。AbilityStage 组件容器的核心作用组件生命周期管理:AbilityStage 组件容器负责管理阶段内所有组件的生命周期,包括创建、启动、运行、停止和销毁等状态。资源分配:AbilityStage 组件容器负责分配阶段所
通过FinClip小程序容器承接已有业务小程序,再用小程序管理平台做版本治理,鸿蒙端可以更快补齐业务模块。宿主APP守住系统能力和安全边界,小程序负责独立业务页面,平台负责发布治理,这条路径更适合需要同时兼顾上线速度和工程可控性的团队。
知识库 App 首页在基础版上进行两处关键优化:新增快捷操作区,提供高频功能入口;调整笔记本卡片视觉设计,通过阴影和内边距增强层次感。快捷操作区采用四等分布局,各入口以不同色彩区分功能,目前仅部分功能实现跳转。笔记本卡片升级为微阴影设计,优化图标透明度与信息层级。整体布局保持一致性,通过色彩与尺寸差异突出核心操作入口。这些细节改进虽小,但显著提升了用户的第一印象和操作效率。
菜谱App的CategoryPage页面核心功能是接收首页传来的分类参数并展示对应菜谱。该页面采用标准的三步流程:1)通过路由参数获取分类名;2)过滤菜谱数据;3)渲染结果列表。导航栏动态显示分类名称和菜谱数量,列表区域展示经过筛选的菜谱卡片。页面虽简洁但完整实现了分类筛选的核心逻辑,其参数接收方式和列表渲染模式可复用于其他筛选场景。文章详细解析了路由参数处理、动态数据过滤和列表渲染的实现细节,并
本文针对导航系统优化提出了两项核心改进:路由分化和参数驱动。原系统中14个可点击区域有13个跳转至MessagePage,导航功能形同虚设。优化后,菜单项根据实际功能分化为跳转至ProfileEdit、MessageDetail、ProductList和ServiceChat四个目标页面。其中MessageDetail作为通用详情页,通过接收路由参数动态渲染不同内容,既保持了页面统一性又实现了视觉
公司的APP做久之后,很容易把APP做的臃肿,功能越来越多,体积也越来越大。原来只有商城、社区、聊天,后来要接生活缴费、打车出行、家政维修、票务预约、会员权益、附近商户,今天分享一下如何通过小程序管理平台的形式为来解耦优化APP,引入第三方生态
这篇文章分享了一个饮品App首页从初始开发到逐步重构的演进过程,重点介绍了架构优化和数据管理的关键改进: 代码结构优化:从最初UI与数据混杂的代码,逐步分离为数据层、工具方法和UI组件,提高可维护性。 数据管理改进: 抽离配方数据到独立文件(RECIPES数组和RecipeData接口) 通过ID引用数据,使UI与具体数据解耦 处理可能的undefined情况增强健壮性 图片加载容错: 封装Saf
DevEco Studio默认工程中未自动生成AbilityStage,如需要使用AbilityStage的能力,可以手动新建一个AbilityStage文件,具体步骤如下。AbilityStage是一个 Module 级别的组件容器,应用的HAP在首次加载时会创建一个AbilityStage实例,可以对该Module进行初始化等操作。AbilityStage模块提供在Module加载的时候,通知
{space?Row(value?:{space?List(value?: {space?Flex(value?
先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!因此收集整理了一份《2024年最新HarmonyOS鸿蒙全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提
学习技术一定要制定一个明确的学习路线,这样才能高效的学习,不必要做无效功,既浪费时间又得不到什么效率,大家不妨按照我这份路线来学习。自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。深知大多数HarmonyOS鸿蒙开发工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果
🐼作者简介:一名大三在校生,喜欢AI编程🎋🐻❄️个人主页🥇:落798.🐼个人WeChat:hmmwx53🕊️系列专栏:🖼️零基础学Java——小白入门必备🔥重识C语言——复习回顾🔥计算机网络体系———深度详讲HCIP数通工程师-刷题与实战🔥🔥🔥微信小程序开发——实战开发🔥HarmonyOS 4.0 应用开发实战——实战开发🔥🔥🔥Redis快速入门到精通——实战开发
如何在不大规模重写代码的前提下,快速上线一个鸿蒙原生APP,分享一下基于小程序容器SDK 搭建一个“Native+小程序容器”的混合开发技术,让从"重写几十套 ArkUI 代码"压缩到"集成一个 SDK 加配置几个入口",复用已有代码资源,大幅度降低开发成本~
HarmonyOS中,onWillScroll和onDidScroll是滚动容器组件(如Scroll)的两个关键事件回调接口。或onWillScroll都可实现监听滚动,参考。,用于监听当前帧滑动的偏移量和当前滑动状态。(例如通过返回值控制是否允许滚动)。,欢迎开发者前往论坛提问交流。,主要用于滚动行为的前置拦截。Scroll的滑动百分比。触发,属于滚动流程的。触发,属于滚动流程的。
本文主要介绍了下如何将本地项目部署到虚拟机上
鸿蒙(HarmonyOS)应用开发中,集合与数组容器是处理数据结构的核心工具,提供了高效的数据存储和操作方法。鸿蒙开发框架提供了丰富的容器类API,主要分为线性容器和非线性容器两大类,共14种容器类型,每种容器都有其特定的使用场景和性能特点。线性容器包括ArrayList、Vector、List、LinkedList、Queue、Deque和Stack,非线性容器包括HashMap、HashSet
集合中的key值的查找依赖于hash值以及二分查找算法,通过一个数组存储hash值,然后映射到其他数组中的key值以及value值,key的类型满足ECMA标准中要求的类型。TreeSet依据泛型定义,集合中的value值是有序的,TreeSet的底层是一棵二叉树,可以通过树的二叉查找快速的找到该value值,value的类型满足ECMA标准中要求的类型。TreeMap依据泛型定义,集合中的key
系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开
Kubernetes 日志系统建设难点典型的 Kubernetes 架构Kubernetes 上的日志方案相比我们之前基于物理机、虚拟机场景的日志方案有很大不同,例如:日志的形式变得更加复杂,不仅有物理机/虚拟机上的日志,还有容器的标准输出、容器内的文件、容器事件、Kubernetes 事件等等信息需要采集;环境的动态性变强,在 Kubernetes 中,机器的宕机、下线、上...
[DiscoveryService]: send[xxxchannel] - Channel:xxxchannel received discovery error:access denied状态:之前启动成功过区块链浏览器容器,后来容器总是莫名其妙的挂掉原因:第一次通过docker-compose.yaml启动区块链浏览器时候,会为持久化数据(Postgres数据和用户钱包)分配了两个命名卷bl
容器是敏捷软件开发的中心。他们已经从边缘的开源技术转向为现代软件和嵌入式Linux系统提供动力的构建块。随着物联网(IoT)的出现,该领域的先锋公司现在正在寻找容器,以将DevOps的优势扩展到嵌入式开发系统的独特需求。随着企业希望扩大其物联网环境的能力,流行的容器技术如LXC或Linux容器和Docker位居榜首。 容器简史 容器作为虚拟机(VMs)的轻量级替代品得到普及。虚拟机是虚拟化
Docker自从发布以来,短短3年的时间就迅速成长为各家争先追捧的宠儿,各家企业都希望能够借助Docker来提升自己的产品、优化现有的研发流程。本文分享Docker在天云软件分布式服务研发过程中的应用与实践,主要介绍使用Docker、Compose构建分布式服务的CI/CD体系;容器技术的引入为天云软件的SkyForm CMP带来了哪些变化;围绕着CI/CD,如何使天云软件在日常研发活动中变得更加
摘要:API12及后续版本强化了应用间跳转安全机制,要求通过link跳转方式实现。被调用方需在UIAbility的module.json5中配置skills标签(包含actions、entities和uris字段),并开启domainVerify域名校验。调用方使用openLink接口,通过传入link和options参数(含appLinkingOnly标志)控制匹配逻辑:true时需联网校验域名
swiper组件当不开启循环播放(loop=“false”)时添加自动播放属性(autoplay),设置自动播放时播放时间间隔(interval),页面会自动切换并停留在最后一个子组件页面。设置swiper组件的宽高,导航点指示器的直径大小(indicator-size)、颜色(indicator-color)、相对位置(indicator-top)及选中时的颜色(indicator-select
OpenHarmony为开发者提供了两种Docker环境,以帮助开发者快速完成复杂的开发环境准备工作。两种Docker环境及适用场景如下:独立Docker环境:适用于直接基于Ubuntu、Windows操作系统平台进行版本编译的场景。基于HPM的Docker环境:适用于使用HPM工具进行发行版编译的场景。表1Docker镜像介绍系统类型运行平台Docker镜像仓库标签标准系统(独立Docker环境