2013-07-11 27 views
0

當我在Android項目中添加一個新的活動(.java和.XML文件)時,曾經工作的某些R.id值會丟失並導致我的應用程序拋出NullPointerException ,但如果我用十六進制值再次工作:當沒有找到R.id值時引發Android 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」命令來添加新的活動?

+0

如果您使用最新的sdk,那麼當您遇到錯誤時,您是否嘗試過'Build-> Rebuild Project'? –

+0

添加您的XMl代碼,我認爲您的新xml文件中存在一些錯誤 – OMAK

+0

請發佈錯誤日誌或一些片段。 – Harshid

回答

0

您正在使用什麼導入?你必須使用

your_package_name.R

0

也有一些是不對您的ADT。嘗試更新到最新版本。

如果問題仍然存在,請嘗試在添加新xml時清理項目。

0

下面是如何在Eclipse中解決了這個問題:

文件夾手動創建R.java和保存。之後去到項目,點擊「清潔」以下信息將顯示你的文件將自動被改寫:

R.java被手動修改!恢復到生成的版本!

這是另一種方法

R是自動生成的類,用於保存用於識別您>資源的常數。如果您沒有R.java文件(在1.5 SDK中它將是gen/com.techfuze.app_name/R.java> Eclipse),我會建議關閉並重新打開您的項目或轉至>項目>全部構建 (並按照Josef的推薦,選擇「自動構建」)。如果這不起作用而不是嘗試製作一個新項目,如果問題重新創建,那麼請再次發佈,我們將詳細介紹。

但我發現還有一個問題導致了第一個問題。 SDK目錄中的工具沒有被執行的權限,所以它就像Eclipse不存在的一樣,因此它沒有構建R.java文件。

因此修改權限並選擇「自動構建」解決了該問題。