问题背景目前单框架上的亮度调节接口是绑定在window上,而非具体页面上,如果一个页面A调节了亮度,在页面A返回后,如果没有做恢复操作,跳转返回到页面B后,还会保持该亮度,导致页面亮度和预期可能不符,针对该背景,总结了三类应用场景:场景一(调整亮度页面退出后其他页面仍为系统亮度)如上图,每次进入和退出页面都恢复到系统默认亮度。关键解决方法(通过UIObserver实现页面跳转监听)uiObserver.on('navDestinationU...
2024-12-13 10:46:49 2177浏览 0点赞 0回复 0收藏
HMRouter简介HMRouter作为HarmonyOS的页面跳转场景解决方案,聚焦解决应用内原生页面的跳转逻辑。HMRouter底层对系统Navigation进行封装,集成了Navigation、NavDestination、NavPathStack的系统能力,提供了可复用的路由拦截、页面生命周期、自定义转场动画,并且在跳转传参、额外的生命周期、服务型路由方面对系统能力进行了扩展。目的是让开发者在开发过程中无需关注Navigation、NavDestination容器组件的相关细节及模板代码...
2024-10-15 11:02:46 6254浏览 0点赞 2回复 0收藏
场景绘制能力对比Canvas画布组件是用来显示自绘内容的组件,它具有保留历史绘制内容、增量绘制的特点。Canvas有CanvasRenderingContext2DOffscreenCanvasRenderingContext2D和Drawing两套API,应用使用两套绘制API绘制的内容都可以在绑定的Canvas组件上显示。其中CanvasRenderingContext2D按照W3C标准封装了NativeDrawing接口,可以方便快速复用Web应用的绘制逻辑,因此非常适用于Web应...
2024-09-26 08:39:55 5725浏览 0点赞 2回复 1收藏
场景描述通过性能测试工具测试发现,某应用首页点击一条新闻的响应时延121ms,页面切换响应时延推荐值为100ms,如果不通过性能测试工具集进行分析,开发者需要:复现问题、抓取trace、分析trace,找出丢帧问题点,操作步骤多,耗时较长。本场景通过采用静态检查工具进行问题发现、定位及修改。目标规则点击时延相关的检测规则,推荐performancehighfrequencylogcheck,在onTouch、onAreaChange、onScroll、onActionUpda...
2024-09-25 09:31:34 3979浏览 0点赞 0回复 0收藏
场景描述在一些应用的首页或者详情页上,需要原生组件与网页进行一些嵌套或者展开收起的逻辑。场景一:在滑动场景中原生组件与web页面嵌套,需要先让原生组件的高度变化,等原生组件到底后web页面高度随之变化。场景二:嵌套在列表的原生组件中的web页面,点击按钮可以展开或者收起。方案描述将web组件放置在List或者Scroll组件中,通过web的嵌套滚动属性nestedScroll和Scroll的onScrollFrameBegin属性实现场景一的场景效果。封...
2024-09-23 11:11:34 1.0w浏览 0点赞 1回复 0收藏
4.1简介本文针对应用开发中相当常见的瀑布流页面场景,基于按需渲染、组件复用等技术,使用RN框架实现了高性能瀑布流页面。本文提供详细的开发步骤,帮助开发人员高效实现高性4.1.1基本概念瀑布流:瀑布流布局在应用开发中非常常见。它利用容器的布局规则,将元素项目从上到下排列,形成多列参差不齐、不断加载的效果,使内容像瀑布般倾泻而下。由于其特点,瀑布流常用于展示图片资讯、购物商品和直播视频等多种数据形式。在上...
2024-08-28 11:25:46 1.5w浏览 1点赞 0回复 0收藏
场景描述应用中基于原生能力实现图文混排效果有多个方案可实现,推荐使用Flex作父容器实现的方案(方案一),此方案优点在于节点数量少,结构简单。方案一:基于Flex作父容器实现图文混排建议基于Flex容器作为父容器实现图文混排,优点在于减少节点数量。内部头像使用Image组件,中间部分使用Text文本组件,右边使用Text文本组件。核心代码Flex({direction:FlexDirection.Row}){Image($r('app.media.heard')).width(30).borderR...
2024-08-01 16:48:27 3612浏览 0点赞 0回复 0收藏