Color.Transparent 引起的 NavDestination 页面跳转卡顿 (HarmonyOS 鸿蒙Next)
Color.Transparent 引起的 NavDestination 页面跳转卡顿 (HarmonyOS 鸿蒙Next) 卡顿现象发生在登录页的协议页面,
首页跳登录页,登录页跳协议页都用了 this.entryHapRouter.pushPathByName
首页: @StorageLink ('entryHapRouter') entryHapRouter :NavPathStack = new NavPathStack();
…
else if(name==='QuickLoginPage'){ QuickLoginPage() }
登录页:
@Component
export struct QuickLoginPage {
......
......
else if(item.tag === QuickLoginPage.PRIVACY_TAG){
this.entryHapRouter.pushPathByName('PrivacyProtectPage',QuickLoginPage.USER_AUTHENTICATION_PROTOCOL)//跳转
}
}
PrivacyProtectPage页:
build() {
Row() {
NavDestination() {
Column() {
Text(this.message)
.fontSize(50)
.fontWeight(FontWeight.Bold)
}
.width('100%')
}
//.backgroundImage($r("app.media.Login"))
.width("100%")
.height("100%")
.backgroundColor(Color.Transparent)//发现这里会引起卡顿
}
}
这里只要加上 .backgroundColor(Color.Transparent)
,那么真机测试的时候就会有卡顿。
更多关于Color.Transparent 引起的 NavDestination 页面跳转卡顿 (HarmonyOS 鸿蒙Next)的实战教程也可以访问 https://www.itying.com/category-93-b0.html
加个背景透明色就会卡顿,听着感觉有点玄幻,搞个最小demo提个工单看看吧,不然估计看不出来啥问题。
更多关于Color.Transparent 引起的 NavDestination 页面跳转卡顿 (HarmonyOS 鸿蒙Next)的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
客户支持工程师
03月10日 10:30:30
尊敬的开发者,您好,
关于您的反馈的问题,
规格如此,设置透明就是会将下层的动画展示出来,这里目前只能通过自定义跳转动画来实现。
也可以把动画设置为false来规避
this.entryHapRouter.pushPathByName('PrivacyProtectPage',null,false)
合作愉快。
华为开发者联盟
也不错卡顿吧老铁,这个动画本来就是左侧滑出,因为你设置了背景是透明,视觉上是这种效果。
视频看卡顿很明显,和正常左滑的效果不一样,但是上传不了视频。
那你弄个最小demo,提个工单吧。
在HarmonyOS鸿蒙Next中,Color.Transparent
可能导致 NavDestination
页面跳转时出现卡顿问题。这是由于 Color.Transparent
会触发额外的渲染操作,尤其是在页面切换时,系统需要处理透明背景的绘制和合成,增加了渲染负担,从而导致性能下降。建议在 NavDestination
跳转时避免使用 Color.Transparent
,或者优化页面渲染逻辑,减少不必要的透明效果处理。