android 4.1 编译找不到资源id的问题
2013-03-19 09:54
267 查看
一般情况下找不到id有以下几个原因:
1、id不匹配
2、xml未编译
3、编译顺序有问题
4、未import正确的资源包
在frameworks/base/core/res/res下编译生成的资源文件保存在out/target/common/R/com/android/internal/R.java
所以先在R.java内看有没有你的id,
然后检查源代码有没有:
import com.android.internal.R;
下面是延伸阅读
比较android4.1和之前的版本。
4.1之前的版本,添加一个资源(图片,xml文件),编译时会自动将生成id并添加到public.xml文件里
但是4.1以及之后的版本,编译不会自动生成id,需要程序员自己将id添加到public.xml文件里。
举个例子
添加了图片,那么就添加
<java-symbol type="drawable" name="play_indicator_stop" />
布局文件(layout)
<java-symbol type="layout" name="select_dialog" />
下面这个要引起重视,之前我以为,若添加了布局文件,那么在布局文件里面类似
<ImageView android:id="@+id/play_indicator"
这样添加的id就不需要再往public.xml里面添加了。事实证明仍然需要添加,如下
<java-symbol type="id" name="play_indicator" /
1、id不匹配
2、xml未编译
3、编译顺序有问题
4、未import正确的资源包
在frameworks/base/core/res/res下编译生成的资源文件保存在out/target/common/R/com/android/internal/R.java
所以先在R.java内看有没有你的id,
然后检查源代码有没有:
import com.android.internal.R;
下面是延伸阅读
比较android4.1和之前的版本。
4.1之前的版本,添加一个资源(图片,xml文件),编译时会自动将生成id并添加到public.xml文件里
但是4.1以及之后的版本,编译不会自动生成id,需要程序员自己将id添加到public.xml文件里。
举个例子
添加了图片,那么就添加
<java-symbol type="drawable" name="play_indicator_stop" />
布局文件(layout)
<java-symbol type="layout" name="select_dialog" />
下面这个要引起重视,之前我以为,若添加了布局文件,那么在布局文件里面类似
<ImageView android:id="@+id/play_indicator"
这样添加的id就不需要再往public.xml里面添加了。事实证明仍然需要添加,如下
<java-symbol type="id" name="play_indicator" /
相关文章推荐
- android编译找不到资源id的问题
- Android 4.1源码编译找不到资源文件解决办法
- Android 4.1源码编译找不到资源文件解决办法
- Android 4.1源码编译找不到资源文件解决办法
- Android 4.1源码编译找不到资源文件解决办法
- Android 4.1源码编译找不到资源文件解决办法
- 编译facebook/android-jsc时NDK找不到问题解决
- 回编译apk时,出现找不到系统资源问题
- [AIR接入Android 平台]处理res资源之找不到资源ID
- 解决Android找不到资源问题
- Android framework中修改或者添加资源无变化或编译不通过问题详解
- 【android】 中文URL资源找不到的问题
- MG-SOFT 编译时找不到root ID的问题
- android 防止R被混淆,R类反射混淆,找不到资源ID
- android中编译资源文件的相关问题
- Android 4.2 系统编译 找不到添加的内部资源 com.android.internal.R
- Android 的坑一 :android.content.res.Resources$NotFoundException: String resource ID #0x0 找不到资源文件ID #0x0
- android 防止R被混淆,R类反射混淆,找不到资源ID
- android中编译资源文件的相关问题