android 全局对话框(不依赖具体activity)
生活随笔
收集整理的這篇文章主要介紹了
android 全局对话框(不依赖具体activity)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
第一個方法利用系統彈出dialog,不過樣子有點丑
alert.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);??
"android.permission.SYSTEM_ALERT_WINDOW">??
而以上做法就是聲明我們要彈出的這個提示框是一個系統的提示框,即全局性質的提示框,所以只要手機處于開機狀態,無論它現在處于何種界面之下,只要調用alter.show(),就會彈
出提示框來。
第二個方法是獲取WindowManager,直接添加view
本質上這兩種原理是一樣的。
[java]?view plaincopy注:alter為AlertDialog類型對象
然后在AndroidManifest.xml中加入權限:
[java]?view plaincopy
final WindowManager wm = (WindowManager) context.getSystemService("window");WindowManager.LayoutParams para = new WindowManager.LayoutParams();para.height = -1;para.width = -1;para.format = 1;para.flags = LayoutParams.FLAG_FULLSCREEN | LayoutParams.FLAG_LAYOUT_IN_SCREEN;para.type = LayoutParams.TYPE_SYSTEM_ALERT;final View mView = LayoutInflater.from(context).inflate(R.layout.xxxxxxxxxx, null);wm.addView(mView, para);mView.findViewById(R.id.button).setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {wm.removeView(mView);}});
總結
以上是生活随笔為你收集整理的android 全局对话框(不依赖具体activity)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Minor GC,Major GC,Fu
- 下一篇: 如何Ping特定端口号(评价知乎上的「如