[英]Show a view on top of all activities
我有一个在后台运行的服务,当满足某些条件时,我需要在活动的顶部显示一个窗口。 我应该能够在活动之间导航,并且该窗口应该始终保持在顶部,直到用户关闭它。
选项:
我尝试使用对话框主题进行活动。 这种方法的问题在于,它将位于当时的活动之上。 如果我打开另一个活动,“活动对话框”将位于此新活动的后面。
我想实现一个具有框架布局的 BaseActivity,以便每次打开新 Activity 时都显示此“窗口”。 问题是再次显示而不应该显示,窗口应该是静态的,同时活动正在发生变化。 也不知道如何在服务内调用事务管理器来添加片段。
我读了一些关于拥有将在窗口管理器上附加视图的服务的内容。 问题在于我不确定这是否是一个好习惯。
有什么想法吗? 谢谢!
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.