博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android Service中启动Dialog
阅读量:4660 次
发布时间:2019-06-09

本文共 1138 字,大约阅读时间需要 3 分钟。

        在Service 中弹出Dialog与在Activity中弹出Dialog的方式一样,可是activity finish后,dialog也会随着关闭。他是依附着activity的。在Service中就不一样了,Service没有界面,言弹出Dialog。他依附什么呢?

        首先,看看在Service中怎样弹出对话框:

dialog = new AlertDialog.Builder(ctx).create();			dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); 			dialog.show();			Window window = dialog.getWindow();			window.setContentView(R.layout.exit_dialog);			Button ok = (Button) window.findViewById(R.id.sure);			((TextView)window.findViewById(R.id.prompt_context)).setText(msg);			ok.setOnClickListener(new View.OnClickListener() {				public void onClick(View v) {										//销毁全部Activity										stopSelf();										ExitApplication.getInstance().exit();				}			});				Button cancel = (Button) window.findViewById(R.id.cancel);			cancel.setOnClickListener(new View.OnClickListener() {				public void onClick(View v) {					dialog.cancel();				}			});						dialog.setCancelable(false);
在上面有这样一句话:

dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
这是设置dialog属于全局的。系统的对话框,在不论什么界面都会弹出来。

可是,当我自身app退出时。服务继续执行,又不希望dialog弹出来,怎么实现呢?

有待研究啊!

转载于:https://www.cnblogs.com/jzdwajue/p/7107074.html

你可能感兴趣的文章