当前位置: 首页 > news >正文

android Switch/case with R.id.XXXX in android doesn‘t work 错误: 需要常量表达式解决方案

出现需要常量表达式 R.id.xxx 表达式错误的处理方法

出现的原因是因为:
使用 Android Gradle 插件 8.0.0 时,默认情况下,您的所有 R 类资源都不再声明为 final/constant(因此在 switch 语句中不起作用)。 如果您在 Android Studio 中使用 AGP 升级向导,它实际上会将此行添加到您的 gradle.properties 中,以保留旧行为:

解决方法
1.将switch 切换为 if else 表达式
2.在 gradle.properties 添加 android.nonFinalResIds=false

再看看 加没加 android.nonFinalResIds=false 的id的值有啥不一样

public static abstract final int navigation_notifications = 2131231004
public static abstract int navigation_notifications = 1000006

少了 final 关键字

相关文章:

  • 在超线程CPU上切换到另一个线程
  • 在Android中管理内存
  • 使用 Selenium 自动化获取 CSDN 博客资源列表详解
  • AI在创造还是毁掉音乐?
  • PS系统教学24
  • 如何使用AI解决所有EXCEL公式问题
  • Origin电源维修高压发生器GEXUS-3 GEXUS-15R-02U
  • java基于ssm+jsp 高校二手交易平台
  • React useReducer 使用及 useImmerReducer
  • MySQL入门学习-连接查询.INNER JOIN
  • HTML|02HTML标签
  • 深入理解 Nginx 的正向代理和反向代理
  • 国内算力真的紧缺么?
  • Redis启停脚本
  • 淘宝扭蛋机小程序:互联网时代下行业的发展动力
  • 3.7、@ResponseBody 和 @RestController
  • HTTP那些事
  • iOS仿今日头条、壁纸应用、筛选分类、三方微博、颜色填充等源码
  • JavaScript 基本功--面试宝典
  • JavaScript 奇技淫巧
  • Javascript 原型链
  • Java超时控制的实现
  • Laravel Mix运行时关于es2015报错解决方案
  • Python_OOP
  • Redis学习笔记 - pipline(流水线、管道)
  • SpringBoot 实战 (三) | 配置文件详解
  • VUE es6技巧写法(持续更新中~~~)
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 工作中总结前端开发流程--vue项目
  • 京东美团研发面经
  • 聊聊sentinel的DegradeSlot
  • 一个完整Java Web项目背后的密码
  • 一起来学SpringBoot | 第十篇:使用Spring Cache集成Redis
  • 在electron中实现跨域请求,无需更改服务器端设置
  • 在Mac OS X上安装 Ruby运行环境
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • 中国人寿如何基于容器搭建金融PaaS云平台
  • ​猴子吃桃问题:每天都吃了前一天剩下的一半多一个。
  • ​如何防止网络攻击?
  • ‌分布式计算技术与复杂算法优化:‌现代数据处理的基石
  • !!Dom4j 学习笔记
  • #VERDI# 关于如何查看FSM状态机的方法
  • $.ajax()方法详解
  • (1)Hilt的基本概念和使用
  • (14)Hive调优——合并小文件
  • (Ruby)Ubuntu12.04安装Rails环境
  • (办公)springboot配置aop处理请求.
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • (二)基于wpr_simulation 的Ros机器人运动控制,gazebo仿真
  • (附源码)spring boot基于Java的电影院售票与管理系统毕业设计 011449
  • (附源码)springboot建达集团公司平台 毕业设计 141538
  • (四)事件系统
  • (转)ObjectiveC 深浅拷贝学习
  • (转)visual stdio 书签功能介绍