2015-02-11 56 views
25

在Android Studio中,我導入了一個不包含styles.xml (v21)的項目。 所以我在values目錄下創建了一個styles-v21.xml文件。 styles.xmlstyles-v21.xml現在位於values目錄中。創建樣式-v21.xml

styles.xml

<?xml version="1.0" encoding="utf-8"?> 
<resources> 

    <style name="AppTheme" parent="AppTheme.Base"> 
     <!-- Customize your theme here. --> 
    </style> 

    <style name="AppTheme.Base" parent="Theme.AppCompat.Light"> 

    </style> 

</resources> 

風格,v21.xml

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <style name="AppTheme" parent="android:Theme.Material.Light.DarkActionBar"> 

    </style> 

</resources> 

當我生成項目,我得到生成錯誤:

Error:Error: Duplicate resources: C:\xxx\main\res\values\styles-v21.xml:style/AppTheme, C:\xxx\main\res\values\styles.xml:style/AppTheme

的錯誤是,這兩個資源文件具有相同的名稱:。 但在我見過的其他項目和教程中,這些styles具有相同的名稱。一個是針對Android的版本21兼容性,另一個針對沒有兼容性的Android。

我想我想知道是否應該簡單地更改名稱,或者這些文件應該具有相同的名稱 - 這意味着手頭上存在更大的問題。我應該如何繼續?

+8

在你的問題中的一些地方,你指的是'styles-v21'文件夾。在你的問題中的一些地方,你指的是'styles-v21'或'styles-v21.xml'文件。你創造了所有這些嗎?如果沒有,請編輯您的問題**準確**解釋您創建的文件在哪裏。順便說一句,正確的答案是有一個'res/values-v21/styles.xml'文件。 – CommonsWare 2015-02-11 21:45:06

+0

*修正* - 我會這樣做,看看它是否有效。 – user2456977 2015-02-11 21:51:58

+0

謝謝!這工作完美 – user2456977 2015-02-11 22:07:45

回答

84

右鍵單擊資源文件夾,選擇 - > Android的資源文件,爲新文件「樣式」設置相同的名字,在可用預選賽:選擇最後一項「版本」,最後設置「平臺API級別」 21

+0

did not知道這可以做非常多 – 2015-12-06 18:14:40

+0

謝謝,它的工作完美 – Shudy 2016-06-13 11:48:47

-1

修正styles-v21.xml。

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <style name="AppTheme" parent=""AppTheme.Base""> 

    </style> 

</resources> 
2

你應該在價值觀V21夾版本21和Android工作室創建styles.xml自動添加爲styles.xml(V21)

5

默認情況下,Android Studio不會創建styles.xml(v21)。你需要做的是創建一個文件夾結構如下所示:

  • RES /價值/ styles.xml
  • RES /值-V21/styles.xml

而這就是你將獲得Android Studio中:

enter image description here

然後你就可以定義爲不同的API級別不同AppTheme

0

您必須使用values-v21標題創建值文件夾。並在其中創建style.xml文件,其名稱與values.xml文件名相同。現在重建你的項目。