6

Ich verwende ActionBarSherlock, um meine App mit älteren Geräten kompatibel zu machen. Die Implementierung war einfach, aber jetzt muss ich die blaue Holo-Standardlinie, die Sie unter den Registerkarten sehen, zu einer roten Linie formen.Linienfarbe in Registerkarten ändern - ActionBarSherlock

Ich habe ein paar Themen gelesen (topic 1, topic 2) hier auf SO und auch die ABS doc (link), aber ich kann es nicht zur Arbeit bekommen.

Das ist, was ich bisher habe.

In meinem AndroidManifest.xml habe ich diese Zeile zum application Tag hinzugefügt.

<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/Theme.Sherlock" > <!-- SET THE DEFAULT THEME --> 

Dann in res/values/styles.xml ich habe:

<resources> 
    <style name="AppTheme" parent="android:Theme.Light" /> 

    <style name="Theme.MyTheme" parent="Theme.Sherlock"> 
     <item name="actionBarStyle">@style/Widget.MyTheme.ActionBar</item> 
     <item name="android:actionBarStyle">@style/Widget.MyTheme.ActionBar</item> 
    </style> 

    <style name="Widget.MyTheme.ActionBar" parent="Widget.Sherlock.ActionBar"> 
     <item name="android:background">#ff000000</item> 
     <item name="background">#ff000000</item> 
    </style> 
</resources> 

Aber wenn ich meine app laufen, dann sehe ich immer noch die blaue Linie Farbe Standard.

Was mache ich falsch?


EDIT

dies lesen, wenn Sie Ihren ActionBarSherlock voll stylen!

ich eine Antwort hier auf SO gefunden, die auf den folgenden Link gab: http://jgilfelt.github.com/android-actionbarstylegenerator

Es ist ein einfacher Generator, der für eine vollständig maßgeschneiderte ABS alle benötigten Dateien erzeugt! Alles, was Sie tun müssen, ist die generierten Dateien in die entsprechenden Ordner zu kopieren und fertig!

Vergessen Sie nicht, den Style zu aktivieren (Sie müssen einen Style-Namen im Generator eingeben) in Ihrem AndroidManifest. Siehe hierzu die Antwort unten.

Antwort

8

Ein paar Dinge:

Sie brauchen nicht wirklich <style name="AppTheme" parent="android:Theme.Light" /> mehr, wenn Sie es ändern wollen Theme.Sherlock erben und es für Ihre Anwendung Thema zu verwenden. Wenn Sie sich dazu entscheiden, müssen Sie Theme.MyTheme für Aktivitäten verwenden.

So oder so, um das Problem zu beheben Sie

<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/Theme.Sherlock" > 

zu

<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/Theme.MyTheme" > 

ändern möchten oder Sie können das Thema direkt auf Ihre Tätigkeiten:

<activity 
    android:name="com.awesome.package.activity.SomeActivity" 
    android:theme="@style/Theme.MyTheme"/> 

Randbemerkung , Empfehle ich diese excellent actionbar theme generator

+0

Wie benutze ich es nicht dowloding? – PankajAndroid

1

Sets in Ihrem Manifest Theme-Datei wie folgt:

<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/Theme.MyTheme" > 

Es wird alle Sherlock Themen erhalten und Ihre individuellen Stile hinzufügen.

Verwandte Themen