2011-11-29 91 views
4

我正在製作一個新的android應用程序,並使用操作欄sherlock庫。Android庫導入刪除R

我將庫導入爲一個項目,並得到兩個錯誤。 首先,我的所有佈局都沒有在gen.R文件中找到,因爲我沒有gen.R文件。 「R無法解析爲變量」

其次,我在某些論壇上看到乾淨和重建可以提供幫助,但這並沒有解決我的問題。清潔後,我得到這個錯誤:

[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:4: error: Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Holo'. 
[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:47: error: Error: No resource found that matches the given name: attr 'android:actionBarSize'. 
[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:48: error: Error: No resource found that matches the given name: attr 'android:actionBarStyle'. 
[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:50: error: Error: No resource found that matches the given name: attr 'android:actionBarTabBarStyle'. 
[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:49: error: Error: No resource found that matches the given name: attr 'android:actionBarTabStyle'. 
[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:51: error: Error: No resource found that matches the given name: attr 'android:actionBarTabTextStyle'. 
[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:52: error: Error: No resource found that matches the given name: attr 'android:actionButtonStyle'. 
[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:53: error: Error: No resource found that matches the given name: attr 'android:actionDropDownStyle'. 
[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:54: error: Error: No resource found that matches the given name: attr 'android:actionMenuTextAppearance'. 
[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:55: error: Error: No resource found that matches the given name: attr 'android:actionMenuTextColor'. 
[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:56: error: Error: No resource found that matches the given name: attr 'android:actionModeBackground'. 
[2011-11-29 12:17:08 - DroidFridge] C:\Users\Felix Wackernagel\Downloads\JakeWharton-ActionBarSherlock-79a1bbc\library\res\values-v11\abs__styles.xml:57: error: Error: No resource found that matches the given name: attr 'android:actionModeCloseButtonStyle'. 

...

該XML的文件來自ActionBarSherlock庫。 Library as project沒有顯示錯誤。

任何人都可以幫助我嗎?

+3

android:Theme.Holo是android honeycomb及以上主題。嘗試將android:targetSdkVersion更改爲11 – Style

+0

另外,如果您的包聲明在Manifest和/或類中是錯誤的,則有時R.java不會被找到。 –

回答

3

問題是不是Android的版本是Java版本。大多數Android庫和Android也無法處理Java 1.7。我改變我的項目屬性,並在Java 1.6下構建我的項目,它的工作原理。 HoloEverywhere的同樣的問題。

8

確保您的項目和導入的庫使用相同的Android版本。

這通常與您的項目使用的Android版本有關,特別是如果您導入與您的項目不同的版本。

對於演練,以解決該問題,請參閱我的回答here

+0

這個庫的重點是運行在沒有Halo主題的舊版Android中。將版本設置爲與庫相同不是一個選項。 – Marchy

+0

@Marchy。你怎麼能代表提問這個問題的Happo發表評論? – Marmoy

+0

@Videre其他人正在經歷完全相同的問題,這是合法的。 – 2013-02-23 03:21:01

1

請注意,成功編譯Android項目,並把它運行Android是(主要)不同的東西的舊版本。

爲你的答案, android:Theme.Holo是android honeycomb及以上主題。因此,ActionbarSherlock &必須使用(最低)API級別11(Android 3.0)編譯您的項目。通常我只挑ICS(14+)

有它運行在Android上的舊版本: 打開您的項目清單文件,更改行:

<uses-sdk android:targetSdkVersion="14"/> 

<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="14"/> 

你android應用可以從API級別7(2.2)運行到API級別14(4.0)。 您可以使用2.2模擬器運行它進行測試。

注意ActionbarSherlock不符合API級別運行低於7