HarmonyOS bindSheet 系统半模态转场动画关闭视图会出现回弹闪烁

示例代码

VerticalIconText({ 
  iconWidth: 26, 
  iconHeight: 26, 
  iconName: 'listen_play_icon_speed', 
  text: this.speedText, 
  textSize: 11, 
  textColor: Color.White, 
  textAlpha: 0.6 
}).width(50).height(43) 
  .onClick(() => { 
    QMLogger.debug(TAG, 'onClick') 
    this.isShowSpeed = true 
  }) 
  .bindSheet($$this.isShowSpeed, this.SpeedLayout(), { 
    detents: [234, 234], 
    backgroundColor: Color.White, 
    maskColor: $r('app.color.shadow_color'), 
    blurStyle: BlurStyle.Thick, 
    showClose: false, 
    preferType: SheetType.CENTER, 
    shouldDismiss: ((sheetDismiss: SheetDismiss) => { 
      sheetDismiss.dismiss() 
    }) 
  })
HarmonyOS
2024-08-04 14:44:58
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
youganlan

shouldDismiss是用于二次确认是否关闭的回调函数,需要在里面做一些延时操作,在操作没有结束之前,bindsheet不能关闭,有一个回弹动效。

所以只要写了shouldDismiss,就会有一个会谈效果,但如果没做延时操作,直接将shouldDismiss回调来用,就会产生一个先回弹再关闭的现象。

毁掉使用的话,有提供onAppear和onDisappear回调,请根据实际情况进行选择。

分享
微博
QQ
微信
回复
2024-08-05 12:17:08
相关问题
HarmonyOS bindSheet模态弹窗
306浏览 • 1回复 待解决
基于bindSheet模态弹窗
1033浏览 • 1回复 待解决
如何固定模态转场的高度
518浏览 • 1回复 待解决
模态转场如何控制固定高度
1925浏览 • 1回复 待解决
模态转场来实现弹框样式的页面
915浏览 • 1回复 待解决
Tabs 出现/消失转场动画效果
389浏览 • 1回复 待解决
HarmonyOS 模态相关使用
31浏览 • 1回复 待解决