繁体   English   中英

在所有活动的顶部显示视图

[英]Show a view on top of all activities

我有一个在后台运行的服务,当满足某些条件时,我需要在活动的顶部显示一个窗口。 我应该能够在活动之间导航,并且该窗口应该始终保持在顶部,直到用户关闭它。

选项:

  1. 我尝试使用对话框主题进行活动。 这种方法的问题在于,它将位于当时的活动之上。 如果我打开另一个活动,“活动对话框”将位于此新活动的后面。

  2. 我想实现一个具有框架布局的 BaseActivity,以便每次打开新 Activity 时都显示此“窗口”。 问题是再次显示而不应该显示,窗口应该是静态的,同时活动正在发生变化。 也不知道如何在服务内调用事务管理器来添加片段。

  3. 我读了一些关于拥有将在窗口管理器上附加视图的服务的内容。 问题在于我不确定这是否是一个好习惯。

有什么想法吗? 谢谢!

I have one solution for that 

1. create a static variable in app 

public static Boolean isMatch=false ;

2. either create dialog  or layout that you have to show in activity and manage its show and hide.

2. Create Thread in activity and add 1000 timer


 Thread thread= new Thread() {

                        int wait = 0;

                        @RequiresApi(api = Build.VERSION_CODES.M)
                        @Override
                        public void run() {
                            super.run();

                                while (wait < welcomeScreenDisplay) {
                                    sleep(100);
                                   if(isMatch)
                                             {
                                       dialog.show();

                                      }
                                    wait += 100;

                                }
                        }//run
                    };//welcome thread
                    t.start();

3. in service when the condition is true update the value of the variable 


isMatch =true ;

您可以为您的应用程序发送一个声明显式广播接收器,一旦服务完成,就会自动向父活动发送一条消息。 在此活动中,您将在顶部看到一个可见性消失的视图,一旦您收到广播更改可见性

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM