gpt4 book ai didi

java - 如何使覆盖层接收触摸事件而不消耗其他应用程序的触摸?

转载 作者:行者123 更新时间:2023-12-02 09:30:06 25 4
gpt4 key购买 nike

我目前正在尝试制作一个类似于 Facebook Messenger 聊天头的实用程序叠加层,您可以在其中移动屏幕上的 View 。单击 View 时,它会展开为更复杂的布局。但是,问题是,如果我将 LayoutParams 标志设置为 WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE ,则后面的应用程序会接收触摸事件,而我的叠加层根本不会接收任何触摸事件。但是,如果我删除该标志,覆盖层会接收触摸,但会阻止触摸。这意味着我什至无法打开应用程序抽屉,因为触摸被阻止。

我使用全屏透明 Activity 作为背景,这样我就可以在它周围移动我的覆盖“小部件”。

有什么办法可以让它不阻止触摸事件。即使我没有将其设置为全屏,只要我没有 FLAG_NOT_TOUCHABLE 标志,我的覆盖层就会完全阻止所有屏幕触摸。

最佳答案

请删除此标志

WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE 

带有此标志

WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE

查看此链接https://medium.com/@kevalpatel2106/create-chat-heads-like-facebook-messenger-32f7f1a62064

关于java - 如何使覆盖层接收触摸事件而不消耗其他应用程序的触摸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58057174/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com