如何实现悬浮窗桌面穿透

悬浮窗设置不聚焦不触摸,设置半透明,可以穿透操作。

HarmonyOS
2024-05-26 14:33:51
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
e_leaner

使用的核心API

窗口管理

核心代码解释

import display from '@ohos.display'; 
import window from '@ohos.window'; 
import Prompt from '@system.prompt'; 
  
@Entry 
@Component 
struct Index { 
  @State screenWidth: number = 0; 
  @State screenHeight: number = 0; 
  
  aboutToAppear() { 
    this.screenWidth = display.getDefaultDisplaySync().width; 
    this.screenHeight = display.getDefaultDisplaySync().height; 
  } 
  
  build() { 
    Row() { 
      Button("弹窗") 
        .onClick(() => { 
          window.createWindow({ name: "screenDialog", windowType: window.WindowType.TYPE_FLOAT, ctx: getContext(this) }) 
            .then((r) => { 
              r.setUIContent("pages/ScreenPage2").then(() => { 
                r.setWindowBackgroundColor("#00000000") 
                r.resize(this.screenWidth, this.screenHeight).then(() => { 
                  r.showWindow().then(() => { 
                    r.getWindowProperties().isTransparent = true; 
                    r.setWindowTouchable(false) 
                    r.setWindowFocusable(false) 
                  }); 
                }); 
              }); 
            }) 
        }) 
  
      Button("应用内点击").onClick(() => { 
        Prompt.showToast({ message: "应用内点击" }) 
      }) 
    }.justifyContent(FlexAlign.Center).alignItems(VerticalAlign.Center) 
    .height('100%').width('100%') 
  } 
}

适配的版本信息

 IDE:DevEco Studio 4.0.3.600

 SDK:HarmoneyOS 4.0.10.11

分享
微博
QQ
微信
回复
2024-05-27 19:45:55
相关问题
基于子窗口实现应用内悬浮
648浏览 • 1回复 待解决
横屏应用如何适配华为悬浮?
2515浏览 • 1回复 待解决
HarmonyOS有没有悬浮组件或者库
323浏览 • 1回复 待解决
HarmonyOS 悬浮拖拽功能怎么处理?
210浏览 • 1回复 待解决
使用悬浮和端内want唤醒APP
819浏览 • 1回复 待解决
在hsp子模块中如何加载悬浮页面
1787浏览 • 1回复 待解决
HarmonyOS 悬浮的文档在哪儿呢?
167浏览 • 1回复 待解决
HarmonyOS 多模块下悬浮显示不出来
279浏览 • 1回复 待解决
如何实现全局浮效果
1592浏览 • 1回复 待解决
如何实现 app 内置全局悬浮球功能?
1825浏览 • 1回复 待解决
api6如何实现点击桌面卡片弹出提示
3059浏览 • 1回复 待解决
HarmonyOS桌面小窗口实现方案
358浏览 • 1回复 待解决