相关问题
HarmonyOS 如何设置应用内悬浮窗,通过创建子窗口方式,但是子窗口加载的页面都是空白
316浏览 • 1回复 待解决
HarmonyOS 子窗口悬浮窗如何实现圆角效果
238浏览 • 1回复 待解决
HarmonyOS 有没有基于页面的悬浮窗的实现
203浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙应用内实现全局悬浮窗
849浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙系统上实现应用内全局悬浮窗
704浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何通过子窗口实现全局弹窗功能?
370浏览 • 1回复 待解决
使用悬浮窗和端内want唤醒APP
1283浏览 • 1回复 待解决
使用dialog窗口实现红包雨窗口创建
1247浏览 • 1回复 待解决
如何在应用级别的窗口上悬浮一个按钮,非系统悬浮窗权限这种
1850浏览 • 1回复 待解决
HarmonyOS桌面小窗口实现方案
906浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在鸿蒙系统中实现应用内全局悬浮窗,并解决页面跳转问题?
390浏览 • 0回复 待解决
如何实现悬浮窗桌面穿透
1015浏览 • 1回复 待解决
HarmonyOS 有没有接口实现应用内全局监听触摸事件
385浏览 • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙系统悬浮窗实现中如何让主窗口进行页面跳转
419浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙应用中实现悬浮窗功能?
496浏览 • 1回复 待解决
横屏应用如何适配华为悬浮窗?
3030浏览 • 1回复 待解决
HarmonyOS 应用如何禁止分屏、禁止悬浮窗
339浏览 • 1回复 待解决
HarmonyOS 如何禁用应用分屏or悬浮窗展示
259浏览 • 1回复 待解决
窗口属性栏中如何取消悬浮窗、最大化等图标
1906浏览 • 1回复 待解决
HarmonyOS 如何在PaasSDK内部实现悬浮窗
303浏览 • 1回复 待解决
HarmonyOS 横向悬浮窗
346浏览 • 1回复 待解决
HarmonyOS 如何实现一个悬浮球/悬浮窗,悬浮在所有页面之上?
1590浏览 • 1回复 待解决
HarmonyOS 如何实现应用内全局悬浮图标设置并且可拖动?
1531浏览 • 1回复 待解决
openHarmony 如何让应用 以悬浮窗的形式启动?
3364浏览 • 1回复 待解决
HarmonyOS 应用内浮窗点击事件相关
283浏览 • 1回复 待解决
场景一:
通过事件添加和移除悬浮窗,悬浮窗样式可定制(暂定两种,无白边圆球形和小视频播放窗口类型),可代码修改位置和布局。
方案
通过子窗口创建windowStage.createSubWindow('mySubWindow'),和windowClass.setWindowLayoutFullScreen去除白边。
核心代码
在EntryAbility中获取WindowStage。
创建子窗口,子窗口样式由子窗口加载的页面组件样式决定。
场景二:
创建悬浮窗后,主窗口的系统侧滑返回事件可正常使用。
方案
通过window.shiftAppWindowFocus转移窗口焦点实现创建子窗口后,主窗口依然可以响应事件。
核心代码
在子窗口中将焦点转移到主窗口。
场景三:
可响应正常点击事件,可通过拖动触发悬浮窗的拖拽移动,根据最后手势停留位置,做动画靠屏幕左或靠右显示,跳转和返回上级页面后悬浮窗依然存在,且相对手机屏幕位置不变。
方案
通过设置手势顺序模式识别PanGesture,实现拖拽悬浮窗。
核心代码
创建Position。
设置拖拽选项。
通过在子窗口父组件绑定拖拽动作完成悬浮窗坐标移动。
场景四:
悬浮窗内组件事件触发主窗口的页面跳转(Router和Navigation两种都要有)。
方案
通过获取窗口上下文,实现在悬浮窗点击后,实现主窗口Router跳转。
通过配置NavPathStack全局变量,实现主窗口navigation跳转 。
核心代码
通过windowStage获取主窗口的Router,实现主窗口的Router跳转。
通过AppStorage获取NavPathStack,实现主窗口navigation跳转。
场景五:
悬浮窗的窗口大小自适应组件,子窗口中页面设置了宽高,需要让子窗口自适应页面组件大小。
方案
通过监听通用事件ComponentObserver,设置window的resize调整窗口大小。
核心代码
查找子窗口。
注册监听事件。
通过onClick()事件,实现对组件变化的监听。
场景六:
支持控制悬浮窗隐藏和销毁。
方案
通过设置窗口windowClass.minimize和windowClass.destroyWindow,实现悬浮窗的隐藏和销毁。
核心代码
通过调用minimize,实现子窗口最小化。
通过实现destroyWindow,实现子窗口的资源销毁。
场景七:
视频类应用主动调用画中画完成后台播放,以及返回桌面时自动启动画中画。
方案
1.通过pipController.startPiP()完成主动调用画中画功能。
2.通过pipController.setAutoStartEnabled(true)在返回桌面时完成全局画中画播放。
核心代码
创建XComponent组件。
创建pipWindowController和startPip方法。
初始化pipWindowController。
完成画中画播放使用stopPip方法停止。