2010-09-21 10 views
15

Wie erstellt man ein benutzerdefiniertes Thema und verwenden Sie es im Code? im Menü wie man die Themenoption implementiert und für die Aktivität anwendet?Wie erstellt man ein benutzerdefiniertes Thema und verwendet es in Android-Anwendung

irgendwelche Ideen?

+0

meine Post überprüfen: http://stackoverflow.com/questions/2613101/themes-in-android – Praveen

+0

Werfen Sie einen Blick auf [diese] (http://www.androidengineer.com/2010/06/ using-themes-in-android-applications.html). Wahrscheinlich suchen Sie das. – orchidrudra

Antwort

2

This ist perfekte Website, die alle notwendigen Dateien erstellt, die Sie benötigen, um eine benutzerdefinierte Benutzeroberfläche zu erstellen. Ich habe es vor ein paar Wochen persönlich benutzt und es hat super für mich funktioniert.

Ich habe keine Verbindung mit dieser Seite, aber fand es sehr interessant. Hoffe, das kann Ihnen helfen :)

12

Es gibt eine nette Styles and Themes guide auf der Android-Entwickler-Website. Im Grunde, was Sie tun müssen, ist

  1. Define a style (oder erben eine eingebaute in einem). So definieren Sie einen Stil

eine XML-Datei im res/values/ Verzeichnis Ihres Projekts speichern. Der Name der XML-Datei ist willkürlich, aber es muss die .xml Erweiterung verwenden und im Ordner res/values/ gespeichert werden.

Der Stammknoten der XML-Datei muss <resources> lauten.

Fügen Sie für jeden zu erstellenden Style der Datei ein Element hinzu, das den Style eindeutig identifiziert (dieses Attribut ist erforderlich).

heißt

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <style name="Theme.MyGreenTheme" parent="Theme.Light"> 
     <item name="android:windowBackground">#11aa22</item> 
    </style> 
</resources> 

Es ist nützlich, um die Ressource-Datei zu benennen themes.xml so ist es einfacher, zu erkennen, was diese Stile für verwendet werden.

  1. Apply der definierten Stil auf die Aktivität oder Ansicht, die Sie stilisierte wollen. Sie können entweder

    • die Aktivität/Anwendung Thema in der Manifest-Datei festgelegt:

    <activity android:theme="@style/Theme.MyGreenTheme"/>

    • oder dynamisch festgelegt - den entsprechenden Setter der Aktivitätsklasse verwenden - setTheme().
0

Sie können Ihren Stil basierend auf Standardstil von add "Eltern" hinzufügen.

<style name="DrawerArrowStyle" parent="Widget.AppCompat.DrawerArrowToggle"> 
    <item name="color">#fff</item> 
</style> 

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorHitam</item> 
    <item name="drawerArrowStyle">@style/DrawerArrowStyle</item> 
    <item name="android:textColorSecondary">#fff</item> 
    <item name="android:textAllCaps">false</item> 
    <item name="android:actionOverflowButtonStyle">@style/OverFlow</item> 
</style> 

<style name="OverFlow" parent="@android:style/Widget.Holo.ActionButton.Overflow"> 
    <item name="android:src">@drawable/ic_login_2</item> 
</style> 

<style name="MasukDaftar" parent="Theme.AppCompat.Light.DarkActionBar"> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorHitam</item> 
    <item name="drawerArrowStyle">@style/DrawerArrowStyle</item> 
    <item name="android:textColorSecondary">@color/colorHitam</item> 
    <item name="android:textAllCaps">false</item> 
</style> 

<style name="SplassScreenCustom" parent="Theme.AppCompat.NoActionBar"/> 

<style name="AppTheme.Dark.Dialog" parent="Theme.AppCompat.Dialog"> 
    <item name="colorAccent">#fff</item> 
    <item name="android:textColorPrimary">@color/colorHitam</item> 
    <item name="colorPrimaryDark">@color/colorHitam</item> 
    <item name="android:background">@color/colorPrimary</item> 
    <item name="android:textColorSecondary">@color/colorHitam</item> 
    <item name="android:textAllCaps">false</item> 
</style> 

<style name="TabLayoutTextStyle"> 
    <item name="android:textStyle">bold</item> 
    <item name="android:textSize">16sp</item> 
    <item name="android:textAllCaps">false</item> 
    <item name="android:textColor">#fff</item> 
</style> 

<style name="Toolbar" parent="Theme.AppCompat"> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
</style> 

<style name="AppCompatAlertDialogStyle" parent="Theme.AppCompat.Light.Dialog.Alert"> 
    <item name="colorAccent">@color/colorPrimary</item> 
    <item name="android:textColorPrimary">@color/colorHitam</item> 
</style> 
Verwandte Themen