Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> 為什麼android無法生成R文件

為什麼android無法生成R文件

編輯:Android開發教程

android 無法生成R文件 是件痛苦的事情,即使有時候你xml文件沒有錯誤,他都無法生成。針對此問題, 我總結以下幾個方面的原因。

一.xml本身有錯誤

R.java這個文件是會自動生成的,但是如果你不小心xml文件寫錯了,或者不小心在編輯xml的時候點擊了 run(其實這個時候會運行這個xml文件,會生成一個同名的xml文件,後綴為xx.out.xml),然後正巧你游 clear了一下項目,你可能會發現gen下面的R.java的文件沒有了,這個在剛開始的時候很氣人,真不知道怎麼 解決,後來發現,只要xml文件有問題,系統是絕對不會給你自動生成這個R.java文件,因為他要參照你的每 張xml裡的數據來生成R.java,所以自然就生成不了了。雖然知道了原因但是問題頭疼,假如項目的layout xml文件有幾十個,這個時候怎麼辦,難道要一個一個xml的看嗎,呵呵,其實也不是,把console中的信息 clear一下,然後再clear項目一下,這個時候,console中會有很多紅色的信息,參照這個肯定能准確的找到 哪個文件報錯了。

下面這個事誤運行了xml文件,可以看到gen的包不是空的,R.java文件也存在,並且明確的支出了是 layout包中的錯誤

二。編碼格式不正確

有時候由於編碼格式問題,造成無法生成R文件,此時後,把編碼格式變成utf-8即可

三,不知何種原因,可能是配置問題(轉義字符的問題).

一般來說,Android項目是的R文件是由系統生成的資源的定義,但是偶爾會出現R文件不同步或是丟失的情況 .

不同步的情況,即在RES文件裡面已經存在了一項,但是在R.java文件中卻還沒有定義,

這裡可以點擊,Project->Clean, 選擇項目,然後選中"Start a build immediately",即可重建R 文件.

如果R文件丟失,一般網上的推薦的方法是,右鍵項目文件,點擊"Android Tools"->"Fix project properties".

但是有時這種方法也不可用,那就要重新檢查一下RES文件夾裡面的XML資源文件是否用了轉義字符.

使用我在string裡面定義了一個名為"str"的字符串常量,如果在常量值裡面使用轉義(非法)字符, 編譯的時候

就會出現R文件丟失的情況.

常用到的需要轉義的字符有:<>&"'等,有興趣的可以參考一下網上的文章,下面給出常用的轉 義後的編碼:

轉義字符   實際符號  名稱

&lt;         <            小於號

&gt;        >            大於號

&amp;    &            和

&apos;    '             單引號

&quot;    "             雙引號

注意轉義字符後面的分號(;)不可省略!

這就是我總結無法生成r文件的情況。

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved