自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(822)
  • 收藏
  • 关注

原创 填 HarmonyOS 开发者需求问卷,抽CSDN 会员好礼!

您的每一次反馈,都在为鸿蒙生态注入活力。点击链接填写问卷,锁定您的专属福利,与百万开发者并肩共建鸿蒙未来~鸿蒙生态的蓬勃发展离不开每一位开发者的智慧与贡献。为了更好地倾听开发者声音,优化开发体验,我们正式启动。▪ 问卷收集满50份后,我们将随机抽取5位幸运开发者,每人赠送1张CSDN月会员卡!欢迎邀请身边的鸿蒙开发者共同参与,获奖名单将于活动结束后统一公示。(仅需约3分钟,您的信息我们将严格保密,仅作内部统计分析使用)问卷,诚邀您用几分钟时间,与我们一同塑造更友好的开发环境!▪ 已在鸿蒙深耕的技术专家。

2026-02-02 16:33:45 774

原创 鸿蒙领航者C位出道!解锁名利双收之路!

随着鸿蒙生态的蓬勃发展,我们正在寻找一群具有卓越技术能力和创新思维的鸿蒙领航者,共同推动鸿蒙系统在各个领域的应用和发展,并构建一个更加开放、多元、创新的技术社区。

2025-09-28 18:55:27 40791 3

原创 ArkUI框架运行原理与常见性能优化方案

了解ArkUI渲染的基本流程,探索通过节点优化、懒加载、预加载、组件复用等技术手段,提升列表场景下应用的流畅度,打造极致流畅的界面体验。将本来一帧内加载的数据分成多帧加载,但是分帧渲染需要开发者计算每帧中加载多少数据,操作复杂,因此在必要的情况下才推荐使用。使用扁平化布局组件(如RelativeContainer、Grid)替代多层Column/Row嵌套,减少中间节点数量。所有人【华为专家面对面01期】ArkUI框架运行原理与常见性能优化方案。

2026-02-13 09:38:05 1152

原创 Swiper组件如何实现中间高两边低的效果,前后两个组件的高度如何设置呢?

可以通过调整图片缩放属性scale来调整两侧图片的高度,使用prevMargin、nextMargin调整左右图片距离,实现图示效果。Swiper中将左右两个图片的高度进行缩小?,欢迎开发者前往论坛提问交流。如何实现图示效果,在。

2026-02-12 14:52:21 17

原创 Navigation组件的menus参数icon不显示如何修改?

这里的icon 只支持 string 类型,不支持 ResourceString 类型,可以直接用路径引用。如下代码,会出现错误提示:Type 'Resource' is not assignable to type 'string'.但该图片在其他ets文件中使用$r("app.media.search")是可以正常展示的。,欢迎开发者前往论坛提问交流。请问需要如何修改呢?

2026-02-12 14:51:42 27

原创 HarmonyOS中的路由跳转该怎么设计?Router和Navigation应该使用哪个呢?

5.Navigation的组件全量由开发者自行控制,开发者可以自定义复杂的动效和属性的设置(背景、模糊等),Router的page对象不对外暴露,开发者无法对page进行处理。2.Navigation可以配合动态加载,实现组件动态加载,Router页面使用@Entry进行修饰,当前模块加载时会生成全量页面。1.Navigation传递参数性能更优,Navigation通过引用传递,Router通过深拷贝完成;4.Navigation可以嵌套在模态对话框中,也就是说可以模态框中定义路由,Router不支持;

2026-02-12 14:48:58 29

原创 Canvas绘制内容怎么更新?

具体可以将变化的数据通过@Watch监听,同时绑定一个自己封装的drawCanvas()方法,当数据刷新时就会调用Watch绑定的方法执行绘制逻辑。对于Canvas组件上的图像,已经绘制出来后便不会再改变,可以使用reset重置,或者clearRect清除局部再重绘。对于Canvas组件,只要调用绘制接口就会触发刷新。Canvas的绘制内容怎么更新呢?,欢迎开发者前往论坛提问交流。

2026-02-12 14:48:05 15

原创 子组件的点击事件,如何正确让父组件进行响应?

在 web 的 vue.js 中,可以通过 emit 将子组件的事件通知给父组件,父组件@监听 emit 的 key 值就可以处理子组件的事件响应了。方案三:可以在子组件中用一个@Link修饰的变量标志该事件发生,父组件中用@State修饰 @Watch监听,在监听事件中响应。除了官网提供的透传方式(如下图)以外,还有别的方式可以在父组件中,处理子组件内点击事件吗?方案一:楼主提到的官网中的透传方案,将父组件的事件传到子组件,即可在子组件调用,在父组件响应处理。,欢迎开发者前往论坛提问交流。

2026-02-12 14:29:20 17

原创 怎么实现一个图片一直循环上下匀速移动的动画效果?

怎么实现一个图片一直循环上下匀速移动的动画效果?我用animateTo写移动的时候直接就跳过去了,没有中间匀速移动的效果。用animation也没实现。可以通过motionPath结合animateTo来实现图片循环上下匀速移动的动画效果,,欢迎开发者前往论坛提问交流。

2026-02-12 14:26:56 10

原创 在 HarmonyOS 中,如果用户拒绝了应用的某个权限请求,应用中要如何处理?

2、当用户主动触发使用此业务功能或为实现业务功能所必须时,应用程序可通过界面内文字引导,让用户主动到“系统设置”中授权。1、如果用户拒绝授予某个权限时,需要确保与此权限无关的其他业务功能可以正常使用,不能影响应用的正常注册或登录。在 HarmonyOS 中,如果用户拒绝了应用的某个权限请求,应用应该如何处理?,欢迎开发者前往论坛提问交流。

2026-02-12 14:26:03 15

原创 元服务如何获取/设置屏幕亮度?

开发元服务时,需要设置屏幕亮度,发现@system.brightness和@ohos.settings在元服务当中都不支持,有替代api可以实现吗?推荐使用setWindowBrightness这个接口来设置屏幕亮度,,欢迎开发者前往论坛提问交流。

2026-02-12 14:25:09 9

原创 元服务如何播放rawfile中的音频文件?

可以用resourceManager.getRawFdSync()获取rawfile中的文件信息,使用AVPlayer实现元服务播放音频文件。元服务中如何实现播放rawfile文件夹下的mp3文件呢?,欢迎开发者前往论坛提问交流。

2026-02-12 14:24:32 18

原创 页面中有一个横向滚动的Scroll组件,用户不知道可以滑动,怎么达成Scroll组件可滑动的暗示呢?

我在一个Column组件中定义了一个横向滚动的Scroll组件,用户可以滑动来查看完整的内容,但是有时候内容的展示恰好是完整的,用户不知道可以滑动,因此我想设计当用户向下滚屏到Scroll组件所在位置时,有一个动画可以让Scroll内容从最右迅速滚动到最左,从而达成Scroll组件部分可横向滑动的暗示,应该如何实现?可以在onVisibleAreaChange回调中,用animateTo实现让Scroll内容从最右迅速滚动到最左的动画,,欢迎开发者前往论坛提问交流。

2026-02-12 14:20:17 8

原创 同样使用@State装饰器,有时第三层数据可以更新UI,有时不可以,是什么原因?

UI中this.son.son更新是因为class是引用数据类型,this.parent.son和this.son指向的是同一个堆内存中的对象,该对象的值已发生变化,框架观察到son的属性发生变化触发UI更新。第二段代码中,this.parent.son = this.son时框架观察到parent的属性发生变化触发UI更新,这是一个异步过程,在UI更新时this.parent.son.son = '333'赋值已执行完毕,所以最终UI中的this.parent.son.son显示的是最新值。

2026-02-12 14:19:39 16

原创 使用@BuilderParam 之后预览器无法启动是什么原因?

预览器使用请遵循以下规则:对于所有将被预览到的组件,如果组件的属性支持本地初始化,则都应当设置一个合法的不依赖运行时的默认值,以确保异常调用到该组件时,即使入参不完整,也能正常运行渲染。在使用@BuilderParam来接收组件或者使用尾随闭包的时候,出现预览器无法打开的情况是什么原因呢?是只能使用模拟器吗?使用@BuilderParam时本地入参没有初始化,会导致运行渲染失败。,欢迎开发者前往论坛提问交流。

2026-02-12 14:18:59 7

原创 使用 @Builder数据刷新后UI没有刷新,导致图片错乱怎么解决?

定义构建函数(@Builder)默认的按值参数传递方式不支持动态改变组件,当传递的参数为状态变量时,状态变量的改变不会引起@Builder方法内的UI刷新,要实现UI动态刷新需要。如下代码,直接使用 @Builder itemBuild 会导致图片错乱,直接写Image 就正常。如果我还是想用 @Builder itemBuild,怎么让复用也正常呢?② 不用@builder,改为使用自定义组件@Component也可以实现需求。,欢迎开发者前往论坛提问交流。

2026-02-12 14:18:22 13

原创 扫描控件得到扫描沙箱结果后,保存到相册失败,怎么解决?

3、DocumentScanner返回的uri不是沙箱路径,不能直接调showAssetsCreationDialog来存放到相册,所以需要先将其copy到沙箱,然后再去调showAssetsCreationDialog即可保存到相册。代码是用模拟器运行的,根据官网建议用phAccessHelper.showAssetsCreationDialog实现,但是保存失败了,既不往下执行,又没任何提示,也没进到catch。,欢迎开发者前往论坛提问交流。

2026-02-12 14:17:39 10

原创 如何在应用内主动刷新卡片?

中介绍的是从卡片拉起应用页面,然后应用去刷新卡片。我现在需要在平时打开应用的时候,将用户在应用内刷新的数据同步到卡片,如何通知卡片进行刷新操作?在应用内通过formProvider.updateForm更新卡片信息,这里面的updateForm那个卡片formId是怎么获取的呢?应用更新卡片数据,使用updateForm()进行更新,参数需要传formId。添加卡片时,需要开发者将formId持久化储存,可以存到。中,更新的时候取出来,就可以更新对应的卡片了。,欢迎开发者前往论坛提问交流。

2026-02-12 14:16:28 18

原创 如何停止无限循环的动画?

目前animateTo不能暂停动画,建议使用animator代替,通过animator.pause()实现。或者另外启动一个动画去打断上一个动画,但是这样子会触发第一个动画的onFinish,参考demo。使用animateTo属性动画开启动画,并且无限循环,但是怎么停止动画呢?,欢迎开发者前往论坛提问交流。

2026-02-12 14:15:43 10

原创 如何实现选择多张图片上传?

HarmonyOS NEXT如何实现多选图片上传到服务器呢?有没有详细一些的介绍或者案例?将选择后的文件使用网络请求传到服务器(可以用二进制或者文件路径格式),网络请求可以使用。,欢迎开发者前往论坛提问交流。

2026-02-12 14:14:57 6

原创 如何判断应用是否处于悬浮窗状态?

为了适配折叠屏,通过折叠屏的展开状态监听,界面用了两套不同的尺寸布局。但是折叠屏打开时,悬浮窗挂起,界面又不适配了。因为加载的折叠屏打开的布局尺寸,但是悬浮窗会变成常规竖屏手机样式了。目前想到的是再加一个悬浮窗监听,如果是悬浮窗就使用常规竖屏手机布局尺寸,但是没有找到这个监听方法。,欢迎开发者前往论坛提问交流。

2026-02-12 14:05:24 10

原创 如何将相册照片保存到APP的沙箱?

请问怎么将手机相册图片保存到APP的沙箱呢?大概思路是什么,有demo可参考吗?,欢迎开发者前往论坛提问交流。将选择的图片保存到沙箱。

2026-02-12 14:03:51 12

原创 如何导入其他module的so库?

项目里有多个模块,在其中一个公共模块,创建了cpp目录,放入了c++代码,并配置好了index.d.ts、cmake、napi等信息,在本模块界面中通过import libxx from 'libxx.so'可以正常调用C++函数。依赖上述的HAR或HSP后,使用已链接+头文件的方式,在链接的时候,直接写库文件的名字即可,这样纯cpp的so实现了多模块共享。需要通过napi使用的也只需要单独写napi代码即可,此时napi封装后的能力也可以通过模块依赖的方式被其他模块使用。,欢迎开发者前往论坛提问交流。

2026-02-12 14:03:12 20

原创 如何从native层的子线程同步调用ArkTS方法并获取返回值?

如题,我在napi的代码中创建了一个线程,希望调用ArkTS的方法,并能够同步获取ArkTS方法的返回值,有什么办法吗?我现在有了解到napi_create_threadsafe_function,但这个似乎是异步的,无法同步获取返回值。2.回调函数(CallJs)里面把结果赋值给promise,3.子线程获取返回值后,继续处理后续业务。1.调用线程安全函数时传promise,,欢迎开发者前往论坛提问交流。

2026-02-12 14:02:31 8

原创 如何安装和使用第三方库?

1. 下载安装有两种方式,可以单独安装某个库,也可以在oh-package.json中配置依赖再执行ohpm install。看文档里面说 ArkTS 是兼容 TS 的内容,那么如果我想使用第三方库的时候,应该如何安装和引用呢?鸿蒙开发,是使用ohpm进行包管理的,并不是所有三方库都能引入的,需要看下。2. 使用js-sha1处理字符串、二进制数组、数组等数据。openHarmoney开源三方仓库。库来进行开发,应该如何操作呢?,欢迎开发者前往论坛提问交流。中有没有,若有则可用。

2026-02-12 14:01:52 29

原创 关于replacePath和pushPathByName的问题,用replacePath后返回还是上一个页面是为什么?

使用Navigation导航,在首页就使用了replacePath替换页面,之后返回却还是回到了被替换的原页面。明明是替换页面,原页面不是应该不在栈里了吗?为什么返回还能是上一个页面呢?那和pushPathByName 这种不就没区别了吗?若pageA不是通过NavDestination和pageMap注册的路由组件,而是直接写在Navigation内容区。Navigation的内容区默认展示导航内容,即路由栈为空时的首页。,欢迎开发者前往论坛提问交流。

2026-02-12 14:00:48 9

原创 父组件的点击事件,如何让子组件进行响应?

方案一:可以定义一个controller类,在controller类中定义和子组件中类型相同的方法,在子组件中将实际封装的方法给到controller。父组件在使用时,new一个controller对象传入子类中,在父组件中调用controller对应的方法。CenterScreen是封装的自定义组件,在CenterView中引入使用。我想给CenterView的Image($r('app.media.startIcon'))设置点击事件,在CenterScreen中响应并处理逻辑,该怎样处理呢?

2026-02-12 14:00:06 8

原创 父子组件使用@State/@Prop交互,子组件中UI成功更新,但promise中无法获取到最新的值,原因是什么?

UI中this.son.son更新是因为class是引用数据类型,this.parent.son和this.son指向的是同一个堆内存中的对象,该对象的值已发生变化,框架观察到son的属性发生变化触发UI更新。第二段代码中,this.parent.son = this.son时框架观察到parent的属性发生变化触发UI更新,这是一个异步过程,在UI更新时this.parent.son.son = '333'赋值已执行完毕,所以最终UI中的this.parent.son.son显示的是最新值。

2026-02-12 13:59:26 33

原创 包含C++代码的静态库引入失败,请问是什么原因?

崩溃的原因在于demo中使用时用import testNapi from 'liblibrary.so';引入,是动态库的引入方式,但在CMakeLists里面把napi层编译成了静态库,导致找不到liblibrary.so,调用函数的时候找不到符号表,最终导致崩溃。项目中有一个包含C++代码的静态库,使用import testNapi from 'liblibrary.so'引入报错了,是什么原因,怎么解决呢?,欢迎开发者前往论坛提问交流。编译时编译为动态库即可解决。

2026-02-12 13:58:23 33

原创 半模态高度能否自适应,怎么实现?

通过设置height属性值为SheetSize.FIT_CONTENT,可指定半模态高度为适应内容的高度。居中弹窗和跟手弹窗最小高度为320vp,最大高度为窗口短边的90%。当半模态自适应的高度大于最大高度时,显示最大高度;小于最小高度时,则显示最小高度。文档中有说明可以通过设置height来固定高度,但我不需要固定高度,是否可以实现让半模态窗口在限定最高高度的情况下自适应内容高度呢?如下代码,需要实现让半模态窗口自适应myBuilder()高度,若高度超过最高限制高度则显示限制高度。

2026-02-12 13:57:37 37

原创 @ObservedV2和@Trace装饰的单例class数据,修改后为什么UI不更新?

想要更新项目中一个单例数据源,同时刷新多个组件的UI,使用@ObservedV2和@Trace装饰器修改单例数据后界面不会刷新,是否有其他方式实现?原因是static修饰的静态属性属于类本身,而不是类的某个实例,框架的观察者机制通常监听实例属性的变化。,欢迎开发者前往论坛提问交流。可以改用闭包单例模式,

2026-02-12 13:56:52 12

原创 【划重点】HarmonyOS 应用市场审核 3.5 驳回“十大高频问题”全解析

丰富应用核心功能,新增“做饭计划、上传菜谱、菜篮子”等模块,满足多种用户使用场景,优化整体界面设计展示,凸显菜品,使应用具有实用性的同时更加美观。围绕核心功能深化与拓展实用场景,突出差异化设计理念,强化技术业务协同能力,优化数据存储机制,提升操作便捷性与界面友好度,打造流畅舒适的用户体验。强化功能深度,增加功能实用性,提供实际可使用有价值的功能,不能仅企业文字信息、图片介绍,未提供实际的用户服务。聚焦应用核心功能,避免信息的简单堆砌与罗列,需打造差异化内容,增强交互设计与闭环体验,提升用户使用体验。

2026-02-12 09:44:42 778

原创 “新”意十足 · HarmonyOS模板&组件(功能增强:家政、儿童教育、健身房、微短剧、图像美化模板)

本模板为健身房会员平台的元服务提供了常用功能的开发样例,提供了健身房信息展示、选择门店、选择城市、课程展示、卡项展示、课程预定、卡项购买、会员中心等能力。本模板为图片美化应用提供了常用功能的开发样例,提供了图片裁剪、添加文字、滤镜、贴纸、马赛克、水印等功能。本次版本更新涉及鸿蒙能力接入:开屏广告、分享、数字收银台、华为推送。本模板为短剧类应用提供了常用功能的开发样例,模板主要分首页、剧场、我的及详情播放页六大模块。本模板为家政类元服务提供了常用功能的开发样例,模板主要分首页、全部服务和我的三大模块。

2026-02-03 18:13:35 367

原创 “新”意十足 · HarmonyOS模板&组件(本次上新:面包屑、验证码、超链接、签名、水印等组件)

同时诚邀您添加下方二维码加入“组件模板开发者社群”,精彩上新&活动不错过!💡 鸿蒙生态为开发者提供海量的HarmonyOS模板/组件,助力开发效率。,小编会快马加鞭为您解答~欢迎下载使用模板&组件“★ 更多内容,一键直达。

2026-02-03 18:07:16 58

原创 鸿蒙开发者2026年1月社区声望值月度榜单揭晓!

亲爱的鸿蒙开发者们,1月「声望值排行榜」新鲜出炉!恭喜所有上榜开发者——你们以持续的输出、专业的解答,成为社区中最耀眼的技术标杆,用行动诠释着“分享技术、成就彼此”的社区精神!你们不仅是技术的引领者,更是社区的明星!1月月度声望值TOP3TOP1:@TOP2: @TOP3: @注:1月声望值无≥200的用户,因此本月幸运周边抽奖机制未触发,我们下次再接再厉!但小助手也由衷各位开发者的卓越贡献,你们真正体现了“分享技术、成就彼此”的社区精神!更多排名可前往。

2026-02-03 14:34:44 86

原创 uniapp调试鸿蒙元服务闪退怎么解决?

uniapp的元服务与应用相比,需要在moudle.json5中配置srcEntry、metadata、dependencies以及项目权限信息,不添加可能会让元服务运行闪退。问题截图中module.json5缺少这些信息。同样的代码使用华为真机调试APP可以正常运行,重新打开一个uniapp VUE3的项目启动元服务,HBuilder X和dev都能正常编译运行,但真机上打开元服务就会闪退,怎么解决呢?,欢迎开发者前往论坛提问交流。

2026-02-02 18:09:45 26 1

原创 TextPicker组件,设为两列,如何实现这两列的滑动互不干扰?

TextPicker()组件一共设为两列,如何实现这两列各滑各的呢?现在的现象是,滑动左侧年份的时候,右侧的月份会自动回到一月份。解决方案是写两个TextPicker,效果是一样的,参考demo和其他解决方案相关的讨论,请点击原帖查。,欢迎开发者前往论坛提问交流。

2026-02-02 18:09:09 18

原创 scroll和tabs关联,想让tabBar的标签可以划出屏幕,除了自定义tab以外还有其他办法吗?

可以利用calc计算tabs的高度。高度为 100%(List高度) + barHeight高度,这样tabs实际高度超一屏,可以利用scroll滑动把titlebar滑动到上面去。只要高度计算正确,效果就符合预期。参考以下示例,代码为写死高度为60vp的情况,实际情况可以根据onVisibleAreaChange和this.getUIContext().getComponentUtils().getRectangleById()等API算出具体的高度。,欢迎开发者前往论坛提问交流。

2026-02-02 18:08:31 26

原创 promptAction.openCustomDialog弹窗关闭动画问题?

promptAction.openCustomDialog如何实现在打开的时候蒙层立马出现,弹窗从底部向上划出;关闭的时候弹窗先向下划出去,然后蒙层再消失?目前只实现了打开的效果,弹窗关闭的动画好像只有在蒙层消失了才会触发。通过onWillDismiss 拦截返回事件。通过animateTo 和 update做个动画,示。例代码和其他解决方案相关的讨论,请点击原帖查。,欢迎开发者前往论坛提问交流。

2026-02-02 18:07:56 17

原创 list怎么更新单个item的ui?

可以通过stack布局,将Image组件放在QRCode组件上实现,通过设置image合适大小,不会影响QRCode识别。如果要像微信那样在二维码的中间加个头像应该怎么做,是否有对应API?示例代码和其他解决方案相关的讨论,请点击原帖查。

2026-02-02 18:07:20 15

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除