簡體   English   中英

刪除完全未使用的XML文件,清理后R.java無法自動生成

[英]Deleting completely unused XML file, R.java not auto-generating after clean

我只是從項目中刪除了一個XML文件,該文件已經好幾個星期沒有使用過,並且在我自己編寫的任何文件中都沒有被引用過。 刪除后,我有79個錯誤,聲稱指向R.java文件的所有內容“無法解析或不是字段”。 我已經重新啟動了Eclipse和計算機,並對其進行了多次清理和重建。 無論如何,我似乎都找不到將文件添加回去的方法。 我怎樣才能解決這個問題?

編輯:我的項目中目前根本不存在R.java。

編輯2:這是我的控制台輸出:C:\\ Users \\ Matt \\ workspace \\ BarJinx \\ res \\ menu \\ login_picker.xml:3:錯誤:錯誤:找不到與給定名稱匹配的資源(“ title”中的值為' @ string / action_forgot_password')。

這是我的login_picker.xml代碼:

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

<item
    android:id="@+id/action_forgot_password"
    android:showAsAction="never"
    android:title="@string/action_forgot_password"/>

</menu>

您可以嘗試一些方法。-

  • 我猜您沒有連接到svn信息庫,但仍然可以嘗試右鍵單擊Project => Restore From local history... ,以確保刪除的文件引起了問題(如果關閉了蝕這可能不起作用,但是)

  • 仔細檢查Problems tab ; 它可能會為您提供一個有關為什么未生成R的線索(通常與保持項目源代碼編譯的某些問題有關)

  • 轉到Android properties ,更改Android Target Version並接受。

  • 單擊Android Tools => Fix Project Properties

  • 檢查Project => Java build path以了解構建路徑問題。

希望能幫助到你。

如果您有紅色波浪形(語法錯誤,導致代碼無法編譯),則資源文件不會自動重新創建自己。 通過此關鍵文件,無法重新創建的資源會導致很多錯誤。 這是可以預料的。 要解決您的問題,請打開文件C:\\ Users \\ Matt \\ workspace \\ BarJinx \\ res \\ values \\ strings.xml並添加以下行

如果您使用的是eclipse,那么可以從IDE中添加/編輯字符串,如果好用,請單擊“資源”選項卡。

抱歉,這是您需要的主要部分

<string name="action_forgot_password">So you forgot your password</string>

或者,您也可以在login_picker.xml文件中添加一個字符串

"so you forgot your password"

讓我解釋一下第一種方法是最好的,因為您不能假設用戶會說英語。 稍后,您將了解為什么將字符串分別存儲在一個字符串文件中,或將每種語言分別存儲在多個字符串文件中的原因。 例如,如果應用程序在設置為西班牙語的設備上運行,則首先需要文件字符串。

<string name="action_forgot_password">El So you forgot your password</string>

抱歉,我不會說西班牙語,但是我希望您能理解為什么他們使用這種方式以間接方式引用另一個文件中的字符串。 這是android方式。 您也不能假設運行您的應用程序的設備的顯示屏會很小,因此您最終會布局很多,每個屏幕尺寸一個,這就是為什么您有很多可繪制文件的原因。

因此,多次執行“刪除每個文件中的所有android.R導入”操作后,進入睡眠狀態,並在第二天早上再次進行此操作,它實際上就可以了。 有時我討厭日食。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM