HarmonyOS 自定义弹窗部分问题答疑

1、使用自定义弹窗时,希望拦截返回键不隐藏。

2、自定义弹窗展示怎么遮盖住底部导航条。

HarmonyOS
2024-10-18 10:03:38
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

问题1:目前想要实现防止用户侧滑关闭自定义弹窗的效果需要基于Navigation实现自定义弹窗,然后设置.onBackPressed((): boolean => true)。

@Component  
struct Dialog01 {  
  @Consume('pageInfos') pageInfos: NavPathStack;  
  build() {  
    NavDestination() {  
      Stack() {  
        Column()  
          .width('100%')  
          .height('100%')  
          .backgroundColor(Color.Gray)  
          .opacity(0.1)  
        // Add controls for business processing  
        Column() {  
          Text('Dialog01')  
            .fontSize(30)  
            .fontWeight(2)  
        }  
        .padding(10)  
        .width(250)  
        .backgroundColor(Color.White)  
        .borderRadius(10)  
      }  
    }  
    .onBackPressed((): boolean => true)  
    .hideTitleBar(true)  
    // Set the mode property of this NavDestination to DIALOG  
    .mode(NavDestinationMode.DIALOG)  
  }  
}  
@Entry  
@Component  
struct Index {  
  @Provide('pageInfos') pageInfos: NavPathStack = new NavPathStack()  
  isLogin: boolean = false;  
  
  @Builder  
  PagesMap(name: string) {  
    if (name == 'Dialog01') {  
      Dialog01()  
    }  
  }  
  build() {  
    Navigation(this.pageInfos) {  
      Button('push Dialog01')  
        .width('80%')  
        .onClick(() => {  
          this.pageInfos.pushPathByName('Dialog01', '');  
        })  
    }  
    .mode(NavigationMode.Stack)  
    .titleMode(NavigationTitleMode.Mini)  
    .title('主页')  
    .navDestination(this.PagesMap)  
  }  
}

问题2:可以修改offset和alignment这俩属性的值实现,类似这样。

   alignment: DialogAlignment.Bottom,       
    offset: { dx: -2, dy: 0 }
分享
微博
QQ
微信
回复
2024-10-18 18:22:33
相关问题
HarmonyOS 自定义弹窗CustomDialog问题
491浏览 • 1回复 待解决
HarmonyOS 自定义弹窗问题
544浏览 • 1回复 待解决
HarmonyOS 自定义弹窗 (CustomDialog)问题
245浏览 • 1回复 待解决
自定义弹窗使用相关问题
845浏览 • 1回复 待解决
自定义弹窗自定义转场动画
1040浏览 • 1回复 待解决
HarmonyOS 自定义弹窗选择
279浏览 • 1回复 待解决
HarmonyOS 全局自定义弹窗demo
230浏览 • 1回复 待解决
使用自定义弹窗实现分享弹窗
457浏览 • 1回复 待解决
HarmonyOS 自定义弹窗遮罩未全屏
490浏览 • 1回复 待解决
HarmonyOS 如何制作自定义加载弹窗
261浏览 • 1回复 待解决
如何在自定义弹窗中再次弹窗
2159浏览 • 1回复 待解决
自定义弹窗如何嵌套使用
1468浏览 • 1回复 待解决
promptAction.openCustomDialog 自定义弹窗
275浏览 • 1回复 待解决
如何设置自定义弹窗位置
1980浏览 • 1回复 待解决
HarmonyOS 自定义弹窗封装后不显示
228浏览 • 1回复 待解决
HarmonyOS 希望优化自定义弹窗的使用
220浏览 • 1回复 待解决
HarmonyOS 关于自定义弹窗的封装调用
238浏览 • 2回复 待解决