2012-07-27 19 views
5

Ich benutze den ActionBarSherlock. Ich habe die Anzeigeoption "homeAsUp" in meiner Datei style.xml. Jetzt zeigt dies einen schwarzen Pfeil neben dem Titel der Aktivität. Da mein Thema Weiß auf einem blauen Schwarzgrund ist, möchte ich die Farbe des schwarzen Pfeils ändern oder stattdessen eine ganz neue Symbolressource verwenden. Wie kann ich das machen ?ActionBarSherlock Zurück Button Farbwechsel?

Mit freundlichen Grüßen.

+0

@ ziehbar/Symbol hat dieses Bild auf das Hauptthema Abschnitt. Funktioniert als Charme. – AndroidDev

Antwort

15

Nach Erics Antwort - ich habe viel Zeit verschwendet, um das richtig zu machen.

Denken Sie daran, dass diese Elemente im übergeordneten Anwendungsthema enthalten sein müssen und von Theme.Sherlock oder ähnlich erben.

<!-- 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> 

nicht legte sie in der benutzerdefinierten Aktionsleiste Thema aus Widget.Sherlock.ActionBar vererben.

<!-- 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

Seien Sie vorsichtig, wenn Sie ActionBarSherlock stylen! Hier

ist ein Auszug aus der Website (ActionBarSherlock Theming):

Aufgrund von Einschränkungen im Android Thematisierung Systemen alle Themen Anpassung müssen in zwei Attributen deklariert werden. Die normalen Android-Präfix-Attribute wenden das Design auf die native Aktionsleiste an, und die Attribute ohne Präfix sind für die benutzerdefinierte Implementierung. Da beide Theming-APIs genau gleich sind, müssen Sie Ihre Anpassungen nur zweimal referenzieren, anstatt sie zweimal implementieren zu müssen.

Also in Ihrem Fall müssen Sie zwei Artikel definieren:

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

und

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

Dann sind Sie sicher, dass alle Benutzer die gleiche L haben & F