Validates using resource IDs in a switch statement in Android library module
2017-04-06 09:57
531 查看
昨天在项目里导入项目作为library module时报错,提示Validates using resource IDs in a switch statement in Android library module,很奇怪,主module里也有这种写法啊,怎么就没报错,立马查了一下,看到答案的那一刻才想起来以前遇到过这个问题,看来好记性确实不如烂笔头啊,还是记录一下吧。
首先,这句提示的意思是在android项目的library module里不能使用资源ID作为switch语句的case值。为什么呢?因为switch里的case值必须是常数,而在library module的R文件里ID的值不是final类型的,但是主module的R文件里的ID值是final类型的,所以主module里可以用资源ID作为case值而library module却不能。
那问题怎么解决呢?把switch-case转成if-else呗。
在Android Studio中选中switch,按Option+Return(Mac),Alt+Enter(Windows),选择Replace
‘switch’ witch ‘if’即可。
首先,这句提示的意思是在android项目的library module里不能使用资源ID作为switch语句的case值。为什么呢?因为switch里的case值必须是常数,而在library module的R文件里ID的值不是final类型的,但是主module的R文件里的ID值是final类型的,所以主module里可以用资源ID作为case值而library module却不能。
那问题怎么解决呢?把switch-case转成if-else呗。
在Android Studio中选中switch,按Option+Return(Mac),Alt+Enter(Windows),选择Replace
‘switch’ witch ‘if’即可。
相关文章推荐
- Android开发问题之--Validates using resource IDs in a switch statement in Android library module
- Resource IDs cannot be used in a switch statement in Android library modules
- Resource IDs cannot be used in a switch statement in Android library modules
- Android library module中switch语句遇到的坑,你跌了吗?
- android Project导入library出现 Error:No resource identifier found for attribute 'xx' in package xx'
- Android R.java resource's Ids Non-constant Fields in Case Labels
- AndroidStudio library module的R文件报错
- Android_Module用法_和_如何制作自己的Library开源库
- Android出现Error:No resource identifier found for attribute XXX in package
- PullToRefreshWebView:can't find referenced method 'float floor(float)' in library class android.util
- Android NDK: jni/Android.mk: Cannot find module with tag 'cocos2dx' in import path解决办法
- The project is using an unsupported version of the Android Gradle plug-in
- Building and using a Class Library in Silverlight 2.0
- 解决aapt.exe停止工作(No resource identifier found for attribute 'showAsAction' in package 'android')
- Image is not displaying proper using OpenGL in android ndk
- WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-
- Location-Based Services Using CellID in Android
- WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin
- Using Google Maps in Android
- module and macro in Android.mk