2012-08-02 11 views
5

Wszystko, co chcę zrobić, to zmienić kolor akcentu mojej aplikacji na Androida, ale mam trudny czas zastanowić się, jak to zrobić. Domyślnie dla Androida jest teraz niebieski, ale chcę, aby był pomarańczowy.Jak zmienić kolor akcentu w mojej aplikacji na Androida z niebieskiego na coś innego

Przez akcent koloru, to znaczy nacisk zakładek nawigacji, kolor, który podkreśla po trafieniu list, kolor akcent w oknach pop-up itp

Używam ActionBarSherlock jeśli się liczy.

Oto obraz. Chciałbym zmienić kolor tego niebieskiego akcentu w całej aplikacji: enter image description here

Odpowiedz

2

Będziesz chciał użyć list układu stanu.

http://developer.android.com/reference/android/content/res/ColorStateList.html

może być konieczne, aby jeden z nich dla każdego z widżetów, które będzie mieć nowy domyślny wybrany kolor.

+0

Nie chcę tworzyć nowych wybranych kolorów, użyłem tego typu narzędzia do tworzenia niestandardowych przycisków. Ale chcę zmienić kolor akcentu. Pozwól mi dodać zrzut ekranu do mojego pytania, aby lepiej wyjaśnić. – jacosta

+0

@ user1519069 Spróbuj tego: https://groups.google.com/forum/#!topic/actionbarsherlock/qej6FbZPnAI – Michael

+0

Wygląda na to, że ta osoba Próbowałem zrobić to, co chciałem, ale nigdy nie zostało rozwiązane. – jacosta

2

Minęło trochę czasu, odkąd zadałeś to pytanie, ale teraz, gdy Google opublikował nową wersję AppCompat, możesz zrobić to, co chcesz osiągnąć, po prostu. Odpowiedź, którą ci podaję, jest inspirowana przez android developer blog support library 2.2.1.

  1. Dodaj bibliotekę wsparcia do projektu (jestem zakładając używasz Android Studio).

    Aby dodać te linie do pliku app.graddle (zakładając, że moduł ma nazwę app).

    dependencies { 
        compile 'com.android.support:appcompat-v7:22.2.0' 
    } 
    

  1. Ustaw tematem aplikacji

    Linie te mają zostać dodane do pliku styles.xml. Jak widać, istnieje kilka przedmiotów w tym stylu. Jeśli chcesz się dowiedzieć, jaki element odpowiadają, sprawdź: customize android status bar with material.

    colorAccent to kolor, który chcesz zmienić.

    <!-- Base application theme. --> 
    <style name="AppTheme" parent="Theme.AppCompat"> 
        <item name="colorPrimary">@color/primary</item> 
        <item name="colorPrimaryDark">@color/primaryDark</item> 
        <item name="colorAccent">@color/accent</item> 
        <item name="android:textColorPrimary">@color/textColorPrimary</item> 
        <item name="android:windowBackground">@color/windowBackground</item> 
        <item name="android:navigationBarColor">@color/navigationBarColor</item> 
    </style> 
    

    Potrzebny będzie również ustawić swój temat aplikacji w Androidzie manifestu

    <application 
        android:theme="@style/AppTheme" > 
    
        ... 
    
    </application> 
    

  1. Zmień Od Activity/ActionBarActivity do AppCompatActivity w twoich zajęciach.

    public class MainActivity extends AppCompatActivity 
    { 
        .... 
    } 
    

    Prawdopodobnie będziesz musiał zmienić niektóre metody ze względu na AppCompatActivity.Spójrz na wideo w pierwszym linku, aby lepiej zrozumieć, że :)


  1. Zmień swoje widgety do tych AppCompat

    <LineareLayout 
        xmlns:android="http://schemas.android.com/apk/res/android" 
        xmlns:tools="http://schemas.android.com/tools" 
        android:layout_width="match_parent" 
        android:layout_height="match_parent"> 
    
        <android.support.v7.widget.AppCompatTextView 
         android:id="@+id/text" 
         android:text="@string/hello_world" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" /> 
    
        <android.support.v7.widget.AppCompatButton 
         android:id="@+id/btn_start" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:text="@string/btn_start" /> 
    
    </RelativeLayout> 
    

Et voila! Wszystko gotowe :) Teraz możesz łatwo zmienić kolor akcentu.

Powiązane problemy