该功能是以Service的形式创建的AlertDialog,原因是直接在activity里通过WindowManager.addView()方式未成功。闲话少叙,上代码。
1、AlertDialog实现代码,在Service里创建此dialog,其中context对象是getApplicationContext()。
View v = View.inflate(context, R.layout.dialog_test, null);
AlertDialog.Builder builder = new AlertDialog.Builder(context, R.style.liwyDialog);
builder.setView(v);
AlertDialog dialog = builder.create();
//设置dialog的弹窗类型
dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
dialog.show();

2 、所需权限

3 、启动Service即可。
      dialog弹出后不会占用activity的活动线程,即不会调用activity的onPause(),activity里的功能还可正常运转。实现此功能的关键点在于权限和这个dialog的弹窗属性。如果不设置会报错。






更多相关文章

  1. React Navigation-StackNavigator
  2. 【Tech-Android-View】Android4.0的横竖屏变动
  3. 【Android】WebView不完全总结
  4. PopupWindow简单实现
  5. android:persistent="true"相关--保证不被系统kill掉
  6. Android(安卓)UI学习 - Tab的学习和使用
  7. android开发环境 国内镜像 及Android(安卓)SDK manager使用国内
  8. 【Android(安卓)开发教程】设置Activity的方向
  9. Android设置全局字体大小,实现小中大字体功能

随机推荐

  1. 使用fiddler抓包手机请求数据
  2. Android实现侧滑菜单
  3. Android(安卓)targetSdkVersion 从22提到
  4. android多图拼接长图并合理显示
  5. Android(安卓)7.1 WebView 实现方式选择
  6. mac下使用android studio,解决无法打开问
  7. android获取监听SD Card状态的方法
  8. OkHttp的初步使用(get、post之{RequestBo
  9. appium---操作手机按键(adb shell input
  10. 关于‘Process 'command 'C:\soft\Andr