Android10 Dialog bug

之前写了个显示电池老化的Dialog,今天发新版本测试的时候报错了。

代码

java 复制代码
		AlertDialog dialog = new AlertDialog.Builder(mContext)
				.setTitle(R.string.battery_aging_dialog_title)
				.setMessage(R.string.battery_aging_dialog_message)
				.setPositiveButton(R.string.ok,null)
				.create();
		dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_DIALOG);
		dialog.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM|WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
		dialog.setCanceledOnTouchOutside(false);
		dialog.show();

终端表现

黑屏后重新加载界面

报错信息

java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.

原因

AlertDialog导入的是androidx包,具体原因未知,有没有大佬知道原因

解决方法

import android.app.AlertDialog就能正常运行了。

相关推荐
用户201879283167几秒前
为啥现在 Android App 不用手动搞 MultiDex 了?
android
fouryears_2341725 分钟前
如何将Vue 项目转换为 Android App(使用Capacitor)
android·前端·vue.js
消失的旧时光-194344 分钟前
人脸跟随 ( Channel 实现(缓存5条数据 + 2度过滤 + 平滑移动))
android·java·开发语言·kotlin
小王lj1 小时前
画三角形报错bad_Alloc 原因,回调用错
android
xhbh6661 小时前
【实战避坑】MySQL自增主键(AUTO_INCREMENT)全解:从锁机制、间隙问题到分库分表替代方案
android·数据库·mysql·mysql自增主键
TimeFine2 小时前
Android 通过Dialog实现全屏
android
用户2018792831672 小时前
Android Input 的 “快递双车道”:为什么要用 Pair Socket?
android
ajassi20002 小时前
开源 java android app 开发(十八)最新编译器Android Studio 2025.1.3.7
android·java·开源
用户2018792831672 小时前
Java 泛型:快递站老板的 "类型魔法" 故事
android
Knight_AL3 小时前
浅拷贝与深拷贝详解:概念、代码示例与后端应用场景
android·java·开发语言