如何在浮动窗口前显示对话框构建器

时间:2017-09-15 01:24:17

标签: android

enter image description here

...您好

我有一项活动和服务,在这项服务中,我正在运营一项服务 windowmanager对话框(浮动窗口)

这是目的。

我想在我访问的每个活动中显示此窗口,所以这个浮动窗口也可以像facebook消息一样最小化,除了fb messenger是来自facebook的另一个应用程序

然后有一个场景,我想在我的应用程序中显示一个对话框构建器我的问题是,因为我使用浮动窗口我显示的对话框不会显示在浮动前面而是它只显示在后面因为我知道浮动窗口也是一个对话框,我的对话框显示在浮动窗口的后面,

我的问题是,有没有办法在浮动窗口前显示我的对话框?

我也尝试过显示另一个浮动窗口,但它也会造成很多问题

感谢将来的帮助!

1 个答案:

答案 0 :(得分:0)

您可以使用WindowManager。 WindowManager

例如,您可以编写代码。像这样,

View v;   // your dialog view
WindowManager.LayoutParams params = new WindowManager.LayoutParams(
        WindowManager.LayoutParams.MATCH_PARENT,
        WindowManager.LayoutParams.WRAP_CONTENT,0,0,
        WindowManager.LayoutParams.TYPE_SYSTEM_ERROR,
        WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
                | WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD  
                | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON    
                | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,    
        PixelFormat.TRANSLUCENT);                                       
params.gravity = Gravity.TOP;       
WindowManager windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
windowManager.addView(v, params);

也许你需要得到许可,

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>