2012-04-06 116 views
6

我目前正致力於通過actionbarsherlock幫助我的應用程序與預先3.0設備兼容。我的應用程序有一個自定義主題,它覆蓋了Holo.light將藍色更改爲橙​​色。Actionbarsherlock - 更改操作欄線條顏色

我想將操作欄下方出現的藍色線條更改爲橙色。與官方的動作條我管理這個通過重寫

<item name="android:background">@drawable/ad_tab_unselected_holo</item> 

可惜,這似乎並沒有在actionbarsherlock是工作4

回答

5

你需要做兩件事情:

的ABS 4現在模仿的標準與它的屬性操作欄,所以你需要添加 -

<item name="background">@drawable/ad_tab_unselected_holo</item> 

通知缺席的android:

所以,你的整個代碼將是:

<item name="android:background">@drawable/ad_tab_unselected_holo</item> 
<item name="background">@drawable/ad_tab_unselected_holo</item> 

引述:

由於任何主題 自定義必須在兩個屬性來宣佈Android的主題化系統的限制。正常的 android-prefixed屬性將主題應用於本機操作欄 ,並且前綴的屬性用於自定義實現。由於 這兩個主題API完全相同,因此只需要兩次引用您的 自定義設置,而不必實施兩次。

我還會擴展Theme.Sherlock的一個變量而不是全部,因爲我認爲holo在3.0之前的舊版本設備上不可用。

+1

是的,你需要擴展Theme.Sherlock或ABS 4提供的另一個主題。 – 2012-04-06 14:01:38

+0

此外,在我的研究結果中,我需要有android:背景和樣式的背景以在所有Android版本中一致地工作。不過,我可能會弄錯了,或者這個改變了。 – 2012-04-06 14:02:46

+0

注意我說*添加* - 不能代替,因此兩種變體都會出現。 – 2012-04-06 14:03:35