2013-08-06 40 views
1

我有問題來自定義後退箭頭。我想要一個紅色的箭頭而不是默認的箭頭。我已經閱讀了許多關於這方面的主題,但它不起作用。ActionbarSherlock和homeAsUpIndicator

所以我把我的風格放在res/values/styles.xml中。這裏是我的代碼:

<style name="AppBaseTheme" parent="Theme.Sherlock.Light"> 

    <item name="actionBarStyle">@style/Widget.AppTheme.ActionBar</item> 
    <item name="homeAsUpIndicator">@drawable/btn_nav_retour</item> 

</style> 

我無法設置「機器人:homeAsUpIndicator」東陽它需要API級別11和我分SDK是9

我應該設置在res /值 - 相同的代碼v11/styles.xml?

THX

回答

3

要在所有的API,你應該在values-v11values-v14文件夾中創建style.xml。在values-v14例如,你應該使用:

<style name="AppBaseTheme" parent="android:Theme.Holo.Light"> 
    <item name="android:actionBarStyle">@style/Widget.AppTheme.ActionBar</item> 
    <item name="android:homeAsUpIndicator">@drawable/btn_nav_retour</item> 
</style> 

在默認文件夾values你應該使用ActionBarSherlock給出的屬性,但對於更高的API級別,你應該與Android默認ActionBar屬性堅持,並把android:在他們面前。這樣它就可以用於更高的API級別。

+0

Thx它像一個魅力 – mrroboaat

+0

它的工作,但是,你給的文件夾名稱是錯誤的。正確的文件夾名稱是值-v11,值-v14。 –

+1

@AmitJayaswal感謝您的糾正。我已經解決了答案! :) – hardartcore

0

一點題外話,以接受的答案: 如果你不想複製你的兩個API-範圍的主題,你可以兩個項目中值添加到您的AppBaseTheme/styles.xml:

<style name="AppBaseTheme" parent="Theme.Sherlock.Light"> 
    <item name="actionBarStyle">@style/Widget.AppTheme.ActionBar</item> 
    <item name="homeAsUpIndicator">@drawable/btn_nav_retour</item> 
    <item name="android:homeAsUpIndicator" tools:targetApi="11">@drawable/btn_nav_retour</item> 
</style> 

targetApi屬性阻止來自lint的錯誤消息。它註釋的xml-item被舊的Android版本忽略。