2016-04-16 102 views
2

我在修改某些xml資源文件後出現錯誤,我不太確定如何解決此問題。Android XML資源值錯誤

我正在修改我的「main_activity.xml」佈局文件,並去修改一些文本。我不希望對這些值進行硬編碼,而是通過選擇我的文本,在右側頁面的屬性菜單中單擊「樣式」,然後單擊展開菜單選項以查看所有可用樣式來創建「文本樣式」。這開啓了「資源」對話框中,這些資源有類似的資源:「Base.TextAppearance.AppCompat.Body2」和「Theme.AppCompat.Light」(我把下面的對話框截圖)

Resources Dialog

我看到一個「新樣式按鈕」,並試圖創建一些名爲「txtSize_28sp」的樣式,樣式爲文本大小爲28sp的樣式。我知道有一次我創建了一個名稱和沒有值的資源,最有可能的是:「txtSize_28sp」名稱。問題在於這樣做後它已經與我的gradle構建混淆了,我不能再編譯或運行我的項目。在「R」在我R.layout.activity_main不再解決,我不斷收到此錯誤信息:

C:\Users\Ethan\Dropbox\Development\Android\Projects\DontTapTheAd\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\23.1.1\res\values\values.xml 
Error:(380, 5) String types not allowed (at 'txtSize_28sp' with value ''). 
Error:Execution failed for task ':app:processDebugResources'. 
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Users\Ethan\AppData\Local\Android\sdk\build-tools\23.0.2\aapt.exe'' finished with non-zero exit value 1 

我已經試過的gradle清洗,清洗工程,並與gradle這個文件同步。我找不到要刪除或修復「txtSize_28sp」值的位置。

有誰知道如何解決這個問題?任何幫助,將不勝感激。

+0

Android Studio中有一個Find功能,可以搜索整個項目文件。搜索「txtSize_28sp」並忽略生成的文件(從構建項目創建的文件)中的結果。 – Karakuri

+0

您可以添加您的styles.xml文件 –

+0

感謝您的答覆。至於使用「查找功能」,我不知道使用哪一種查找功能,我已經嘗試了幾乎所有這些功能,我認爲它們將適用於查找該值。就像Anders在下面說的,我認爲它可能在其他API文件夾中,這就是爲什麼我找不到它。我不確定在哪裏搜索我的不同API值。我真的不想手動添加我的styles.xml文件,因爲我想將我的IDE/SDK恢復到原來的樣子。 – Eweb

回答

1

對於不同的API有多個值,因此請檢查不同API的所有多個值文件夾(如value-21),它必須位於其他API值文件夾之一中。

+0

我將嘗試在不同的API中查找值,對於在哪裏以及如何查看不同的API文件夾,您有任何建議嗎? – Eweb

+1

你的'logcat'告訴你問題在這裏'C:\ Users \ Ethan \ Dropbox \ Development \ Android \ Projects \ DontTapTheAd \ app \ build \ intermediates \ exploded-aar \ com.android.support \ appcompat-v7 \ 23.1.1 \ res \ values \ values.xml',所以去那個目錄並刪除那行代碼,如果它不在那個目錄那麼你應該檢查你的'yourproject/app/main/res/allvaluesfolders' – Max

+0

謝謝so很多回應,我會嘗試這個,並回來的結果。 (我已經嘗試了第一個目錄,代碼不是他們的,所以希望它會在我的主/ res/allvalues文件夾中。) – Eweb

1

感謝Ander回答了這個問題,在尋找這些隱藏的代碼行後,他們將其添加到項目中,我終於在C:\ Users \ Ethan \ Dropbox \ Development \ Android \ Projects \ AppName \ app \ src \ main \ res \ values \ dimens.xml文件!我在這個文件中刪除了代碼行(如:txtSize_28sp)後,項目被修復了。 (在這篇文章中添加了值的位置的屏幕截圖。)Directory

+0

歡迎:) – Max