Receiver中使用AlertDialog及主题修改

2025-05-22 14:49:55

1、一般使用AlertDialog.Builder builder = new Builder(context)是这样的。需要修改为:AlertDialog.Builder builder = new Builder(context,android.R.style.Theme_Holo_Light_Dialog);

2、还要修改背景和type方式dialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent); dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);

3、整体代码如下:AlertDialog.Builder builder = new Builder(context,android.R.style.Theme_Holo_Light_Dialog); builder.setIcon(android.R.drawable.ic_dialog_info); builder.setMessage(R.string.msg_forceoff_login); builder.setCancelable(false); builder.setPositiveButton(R.string.ok, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }); AlertDialog dialog = builder.create(); dialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent); dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); dialog.show();

Receiver中使用AlertDialog及主题修改

4、AndroidManifest.xm盟敢势袂l中添加权限 <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> <uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" />

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢