目录

悬浮窗模式下,应用窗口放置在屏幕不同位置时,内部弹窗位置也随着变化

问题现象

应用切换到平板悬浮窗模式下时,拖动应用窗口在平板窗口上的位置后,点击按钮弹出弹窗,弹窗位置也随之改变。

背景知识

问题定位

  1. 检查代码中是否使用position或者offset对弹窗组件进行位置偏移设置。
  2. 检查偏移量设置值是否使用了点击事件中相对于应用屏幕左上角的X坐标displayX,使用该值进行组件偏移时,会导致在悬浮窗模式下displayX值一直在变化,从而出现弹窗位置也一直变化的现象。

分析结论

应用对弹窗组件使用了offset设置了相对偏移,设置值是通过click事件回调函数中获取到的相对于应用屏幕左上角的X坐标displayX。应用切换到悬浮窗模式后,在设备屏幕上移动后displayX的值也随之变化,导致应用内弹窗位置一直变化。

修改建议

使用click点击事件的回调中的相对于应用窗口左上角的X坐标windowX作为弹窗显示的偏移量。