我的最终目标是使用WindowManager并为其添加视图,该视图将在整个应用中保留(不使用需要API> = 23中用户的特殊权限的TYPE_SYSTEM_OVERLAY
。
我现在所做的是:
currentActivity.getWindowManager()
wm.addView(..)
到之前添加的所有窗口。然而,无论我做什么,在调用addView
时都不会添加窗口,它就像窗口管理器只是忽略了那个调用..
我正在使用TYPE_APPLICATION作为窗口。
我尝试使用currentActivity.getSystemService(WINDOW_MANAGER)
代替currentActivity.getWindowManager()
任何人都可以说出原因吗?
答案 0 :(得分:0)
与所有信仰TYPE_APPLICATION_ATTACHED_WINDOW
或TYPE_APPLICATION
或其中包含APPLICATION
一词的任何信息相反(顺便说一句,这是有意义的) NOT 的方式去吧。
我不知道为什么以及 Google工程师在这里回答哪个会很好但解决方法是使用TYPE_TOAST
(?!?!?)< / em>的
还要确保在切换活动时从新活动中获取新的WindowManager
实例,因此如果添加窗口或删除它们,则它是一个有效的实例。
非常感谢..浪费了命名约定和缺乏良好的文档 4小时:)