android编译找不到资源id的问题

当Android项目出现编译找不到资源ID的问题时,可能的原因包括ID不匹配、XML未编译、编译顺序错误或未导入正确资源包。在R.java中检查ID是否存在,并确保源代码中导入了正确的R类。在Android 4.1及以后版本,需手动在public.xml中添加资源ID。例如,添加图片或布局文件后,需分别在public.xml中添加相应的java-symbol。这是一个常见的误解,以为在布局文件中定义的ID不需要额外添加,但实际上仍需这样做。
摘要由CSDN通过智能技术生成

android编译找不到资源id的问题

一般情况下找不到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" />


下面这个要引起重视,之前我以为,若添加了布局文件,那么在布局文件里面类似

<Im

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值