繁体   English   中英

未找到R.id值时引发Android NullpointerException

[英]Android Nullpointerexception thrown when R.id value not found

当我在Android项目中添加新的活动(.java和.XML文件)时,一些曾经起作用的R.id值会丢失,并导致我的应用抛出NullPointerException异常,但是如果我使用十六进制值,它将再次起作用:

R.java: public static final int editTextTotal=0x7f040064;

findViewById(R.id.editTextTotal); //Throws nullpointerex after I add a new activity.

findViewById(0x7f040067) //Works

我已经对Eclipse感到厌倦,所以只使用命令,除了添加文件,更改清单并运行“ ant debug”命令以添加新活动之外,还需要做其他事情吗?

您正在使用什么导入? 你必须用

your_package_name.R

您的ADT出问题了。 尝试更新到最新版本。

如果问题仍然存在,请在添加新的xml时尝试清理项目。

这是我在Eclipse中解决此问题的方法:

gen文件夹中手动创建R.java并保存。 之后,转到Project并单击“清理” 。将显示以下消息,并且您的文件将自动被重写:

R.java是手动修改的! 恢复到生成的版本!

这是替代方法

R是一个自动生成的类,其中包含用于标识资源的常量。 如果您没有R.java文件(在带有1.5 SDK的> Eclipse中为gen / com.techfuze.app_name / R.java),则建议您关闭并重新打开项目,或者转到> Project> Build all (并按照> Josef的建议选择“自动构建” )。 如果那不如尝试创建一个新项目不起作用,如果重新创建了问题,然后再>在此发布,我们将进行更详细的介绍。

但我发现还有另一个问题导致了第一个问题。 SDK目录中的工具没有执行权限,因此就好像Eclipse不存在该工具一样,因此它没有构建R.java文件。

因此,修改权限并选择“自动构建”即可解决该问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM