2012-07-27 246 views
5

我是使用ActionBarSherlock。我的style.xml文件中有displayOption「homeAsUp」。現在,它在活動標題旁邊顯示一個黑色箭頭。由於我的主題是藍色背景上的白色,因此我想更改黑色箭頭的顏色,或者在其位置使用全新的圖標資源。我怎樣才能做到這一點 ?ActionBarSherlock後退按鈕顏色變化?

親切的問候。

+0

@ drawable/icon將此添加到主題部分。充當魅力。 – AndroidDev 2012-07-27 07:49:43

回答

15

除了埃裏克的回答 - 我浪費了很多時間來解決這個問題。

請記住,這些項目必須在父應用程序主題中繼承,從Theme.Sherlock或類似繼承。

<!-- CUSTOM APP THEME --> 
<style name="AppTheme" parent="Theme.Sherlock"> 
    <item name="android:actionBarStyle">@style/AppTheme.ActionBarStyle</item> 
    <item name="actionBarStyle">@style/AppTheme.ActionBarStyle</item> 
    <item name="android:homeAsUpIndicator">@drawable/action_bar_ic_ab_back_holo_dark</item> 
    <item name="homeAsUpIndicator">@drawable/action_bar_ic_ab_back_holo_dark</item> 
</style> 

不要把他們在自定義操作欄的主題從Widget.Sherlock.ActionBar繼承。

<!-- ACTION BAR THEME --> 
<style name="AppTheme.ActionBarStyle" parent="Widget.Sherlock.ActionBar"> 
    <item name="android:icon">@drawable/action_bar_logo</item> 
    <item name="icon">@drawable/action_bar_logo</item> 
    <item name="android:displayOptions">showHome</item> 
    <item name="displayOptions">showHome</item> 
</style> 
2

當你風格ActionBarSherlock時要小心!

下面是從網站(ActionBarSherlock Theming)的摘錄:

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

所以你的情況,你必須定義兩個項目:

<item name="android:homeAsUpIndicator">@drawable/icon</item> 

<item name="homeAsUpIndicator">@drawable/icon</item> 

那麼你是確保所有的用戶都會有相同的大號&˚F