新版AndroidStudio使用switch-case语句时出现Constant expression required错误

原因:

在新版的Android Studio中使用JDK17以上版本,会出现switch语句报错"Constant expression required"的问题,这是因为在JDK17中switch语句的条件表达式支持使用枚举类型,而这个特性还没有被支持。

解决方法:

①在gradle.properties配置文件下添加代码(推荐,最简便)

复制代码
android.nonFinalResIds=false

②替换为if-else语法

③降低jdk版本(不推荐,新版AS强制要求jdk版本)

④使用枚举替换(写法比较麻烦,仅供参考)

创建一个枚举类

在Activity中声明成员变量

然后,将枚举类型与按钮关联起来。你可以使用Map来将按钮的资源ID与枚举类型进行映射。在Activity的onCreate方法中,或者Fragment的onCreateView方法中,进行如下操作:

最后,在你的Activity或Fragment中实现onButtonClick方法,根据枚举类型来执行相应的逻辑:

相关推荐
用户86022504674721 小时前
Jetpack ViewModel 入门与实践
android
随遇丿而安2 小时前
第3周:按钮这件小事,真正麻烦的是“点完以后”
android
峥嵘life3 小时前
五一南昌第三天游玩记录:梅景寻芳,母校忆旧,摩天轮揽夜
android
qq_452396234 小时前
第三篇:《JMeter断言:验证接口响应正确性》
android·jmeter
aqi005 小时前
一文速览 HarmonyOS 6.0.1 引入的十个新特性
android·华为·harmonyos·鸿蒙·harmony
橙子199110166 小时前
Android 第三方框架 相关
android
赏金术士6 小时前
JetPack Compose 弹窗、菜单、交互组件(五)
android·kotlin·交互·android jetpack·compose
海天鹰7 小时前
高版本安卓老应用下面空白
android
猫的玖月7 小时前
(七)函数
android·数据库·sql