- 博客(296)
- 资源 (11)
- 收藏
- 关注
原创 鸿蒙开发:使用Ellipse绘制椭圆
除了使用Ellipse组件可以一个椭圆之外,我们还可以使用Canvas来绘制一个椭圆,但是相对来说,还是没有Ellipse组件高效,所以,如果说Ellipse组件能够满足需求,还是以Ellipse组件为主。
2025-03-31 16:02:29
756
原创 鸿蒙开发:使用Circle绘制圆形
绘制矩形也好,圆形也好,大家做为一个了解即可,在有需要用到的场景中,合理的使用即可,毕竟现成的组件,要比自己用别的方式实现要简单的多。
2025-03-31 14:58:23
635
原创 鸿蒙开发:使用Rect绘制矩形
几何矩形,在实际的开发中,有多种的实现方式,并非一定需要Rect组件,但是,如果有需要用到矩形的场景,建议还是使用Rect组件,因为Rect组件自身携带了很多样式属性,可以满足我们日常的不同的需求。
2025-03-31 14:04:39
972
原创 鸿蒙开发:Canvas绘制之画笔对象Brush
Brush对象主要适用于绘制图形的填充信息,可以修改的有,颜色,是否抗锯齿,透明度等属性,相对比Pen对象,少了几个属性,不过基本上也满足了日常的需求。
2025-03-30 14:54:59
780
原创 鸿蒙开发:事件订阅EventHub
EventHub主要提供了轻量级的线程内通信机制,适用于组件间数据同步、状态通知等场景,在实际的开发中,一定要注意两个事项,其一就是,注意off取消订阅的使用,可以避免内存泄漏,其二就是,关于事件命名的规范,建议使用常量定义事件名,避免硬编码错误。
2025-03-30 10:41:43
983
原创 鸿蒙开发:Canvas绘制之画笔对象Pen
Pen对象主要适用于修改图形形状的轮廓信息,可以修改的有,颜色,线宽,是否抗锯齿,透明度,线帽样式等等属性,当然了如果你想实现一个填充效果,需要切换Brush对象。
2025-03-30 09:43:42
650
原创 鸿蒙开发:了解Canvas绘制
DrawingRenderingContext在使用上远远没有CanvasRenderingContext2D使用起来方便,比如在修改画笔的粗细,颜色等属性上,就可以体现出来。
2025-03-29 16:27:18
700
原创 鸿蒙开发:动态添加节点
流程就是,通过typeNode来创建自己的组件,然后使用追加到FrameNode节点中,然后将自定义节点挂载到NodeContainer上即可,主要使用场景,需要动态创建组件的场景。
2025-03-29 10:29:36
846
原创 鸿蒙开发:如何实现文本跑马灯效果
如果只是一个普通的跑马灯效果,而且Text文本组件中的TextOverflow.MARQUEE可以满足需求,以Text为主,如果你想控制文本的速度,暂停等功能,可以使用Marquee,如果你想实现复杂的场景滚动,比如图片,各种组件嵌套滚动,这种只能自己定义了。
2025-03-28 13:31:27
694
原创 鸿蒙开发:信息标记组件
使用信息标记组件Badge,不需要我们在关注位置问题,我们通过position属性进行控制即可,而且针对信息的显示和隐藏,也不用过多的条件判断,可以说是非常的简单。
2025-03-28 10:33:39
622
原创 鸿蒙开发:单一手势实现长按事件
虽然说我们可以通过onTouch来实现一个长按事件,但是如果想要实现连续,多指那么就比较麻烦,远远没有LongPressGesture实现起来简单,所以在实际的开发中,大家还是以LongPressGesture为主。
2025-03-27 09:18:59
338
原创 鸿蒙开发:单一手势实现多次点击事件
TapGesture点击手势,在实际的开发中,更多的是运用于双击或者需要多次点击的场景,如果仅仅是单次点击,建议大家直接使用onClick即可。
2025-03-27 09:16:53
632
原创 鸿蒙开发:openCustomDialog关闭指定Dialog
以上呢就是两种隐藏指定的Dialog方式,比较的简单,具体的场景,常见于,页面多个弹出Dialog,但是需要隐藏指定的Dialog场景,当然了,也适用于常见的普通场景。
2025-03-25 19:15:20
454
原创 鸿蒙开发:正则中的match和matchAll
在实际的开发中,match和matchAll是两个非常常见的的正则表达式方法;match方法适用于简单的匹配操作,而matchAll方法则适用于需要获取所有匹配结果及其捕获组的场景。
2025-03-24 09:30:30
904
原创 鸿蒙开发:填充剩余空间
关于占满剩余的空间,如果权重能够解决,还是以权重为主,因为Blank的使用必须父组件的宽高有值,否则就会不生效,当然了,在实际的开发中,还是具体问题具体分析,使用恰当的方式解决为主。
2025-03-22 08:49:11
436
原创 鸿蒙开发:远场通信服务rcp拦截器问题
关于rcp的拦截器问题,最重要的就是会话复用的时候,如果Request对象中有需要的参数,就直接用Request中的,而不是使用session中的。
2025-03-20 14:28:41
305
原创 鸿蒙开发:远场通信服务rcp会话问题
总体来说,问题倒不是很大,解决起来也不是很麻烦,所以啊,老铁们,在实际的开发中,对于一些官方文档,还是建议多看,这样可以提前避免后续的不必要麻烦。
2025-03-19 09:13:29
1185
原创 鸿蒙开发:权限授权封装
关于权限,算上本章内容已经阐述了四个章节了,从相关的概念到,权限管理的授权方式,再到申请权限,直至最后的权限工具类封装,基本上涵盖了七七八八,希望可以帮助到大家。
2025-03-19 09:11:44
566
原创 鸿蒙开发:申请授权权限
还是那句话,在申请权限的时候,应当严格遵循最小权限原则,结合动态申请和清晰的用户引导,避免给用户带来不好体验,同样,遵循,在使用到权限的时候再去申请,切记,过前进行申请。
2025-03-17 16:34:18
1033
原创 鸿蒙开发:权限管理之授权方式
在实际的应用开发中,合理选择 system_grant和user_grant是平衡功能实现与用户隐私的关键,system_grant 适用于基础功能,简化开发流程;user_grant 用于敏感操作,需重视用户体验和隐私合规。
2025-03-16 18:57:46
978
原创 鸿蒙开发:权限管理之权限声明
本文,主要简单概述了为什么要有权限管理,以及权限管理的声明原则,这些都是基本的概念内容,大家做为了解即可,重要的是怎么声明权限,在什么位置声明权限,这一点需要掌握。
2025-03-16 18:55:22
1148
原创 鸿蒙开发:了解应用级配置信息
在实际的开发中,如果有共用的资源,建议大家都放到AppScope目录下,对于一些应用级别的信息,比如应用的名字,还有应用的图标,虽然说在Moulde下也可以配置,但是为了更方便的管理,这里比较推荐以AppScope目录下的app.json5为主,当然了,只是推荐,实际当中,两者都可以实现,大家选择其中一种方式即可。
2025-03-14 18:12:34
813
原创 鸿蒙开发:自定义一个搜索模版
这样的一个模版,可以简单的分为,三个部分,分别是上边的搜索框,中间的历史搜索和下边的热门搜索,搜索框,我们直接可以使用系统的组件Search,历史搜索,由于是内容不一的搜索的内容,这里使用弹性布局Flex,下边的热门搜索,条目规格一致,这里我们直接使用Grid网格组件。
2025-03-13 09:20:13
665
原创 鸿蒙开发:实现AI打字机效果
打字机的效果,一般都是在会话聊天之中,也就是列表之中,在实际的开发中,还要兼顾到,流式输出的数据加载是否会影响性能,页面闪烁,最新的聊天信息可展示等问题。
2025-03-13 09:17:41
963
原创 鸿蒙开发:ArkTs字符串string
字符串类型是开发中非常重要的一个数据类型,除了上述的方法概述之外,还有String对象,正则等其他的用处,我们放到以后得篇章中讲述。
2025-03-11 08:55:25
954
原创 鸿蒙开发:wrapBuilder传递参数
本文,主要简单了介绍了一下,非UI使用的情况下,wrapBuilder传递数据问题,除了以上的方式之外,还有其它的方式可以实现,在实际的开发中,还是具体问题具体分析。
2025-03-11 08:50:13
940
原创 鸿蒙开发:相对布局RelativeContainer
当然了,RelativeContainer组件还有着其它的属性,但是最重要的也就是位置的摆放,其实也就是相对于锚点组件的摆放;通过上述的案例,我们不难发现,所谓的左上右下,反着来就是对的,比如在锚点上边,我用bottom,在锚点下面,我用top,在实际的开发中,可极大节约我们的开发时间。
2025-03-07 19:15:33
720
原创 鸿蒙开发:弹性布局Flex
在实际的开发中,需要掌握主轴与交叉轴的关系、换行规则及子元素属性,同时注意性能与兼容性问题,还有一点,Flex组件在渲染时存在二次布局过程,因此在对性能有严格要求的场景下建议使用Column、Row代替。
2025-03-07 19:12:29
713
原创 鸿蒙开发:wrapBuilder来封装全局@Builder
首先第一点,在同一个UI组件内,同一个wrapBuilder只能初始化一次,第二点就是WrappedBuilder对象的builder属性方法只能在struct内部使用。
2025-03-03 13:07:59
479
原创 鸿蒙开发:ArkTs数据类型
无论是哪一种的编程语言,对于数据类型的表示可能有所区别,但也基本上可以分为两种类型,一种是基本数据类型,另一种是符合数据类型。
2025-02-27 13:13:13
927
原创 鸿蒙开发:校验构造传参装饰器@Require
@Require装饰器以声明式语法将参数校验前置到编译阶段,显著降低因参数错误导致的运行时报错风险;然而,对于复杂的业务规则,比如联合使用类型或自定义校验函数等场景,以及需在生命周期函数中补充校验逻辑时,除了正确使用@Require装饰器,还需要结合其它的判断逻辑。
2025-02-26 11:02:53
698
原创 鸿蒙开发:console日志输出
针对初学者而言,大家只需要掌握住日志打印即可,等到了鸿蒙应用开发的时候,还有一个鸿蒙原生的打印工具HiLog,到时,我们也会详细的去讲述,也会针对HiLog,封装一个通用的工具类。
2025-02-24 09:35:56
1058
原创 鸿蒙开发:ArkTs语言注释
所谓注释,在程序开发中,就是针对一段代码进行标注解释,好的注释能够提高代码的可读性,让代码的维护者能更快的介入,比如我们把前面的代码拿出来,如果是一个初学者,就需要翻阅资料进行了解每一个属性的作用和意思。
2025-02-24 09:28:48
955
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人