Android – Styles und Themes

28 Nov

Einse Auswahl an verschiedener ViewsAls Entwickler einer Android Applikation hat man eine Menge an Möglichkeiten um das eigene Programm ganz nach den eigenen Vorstellungen zu designen. Dabei werden u.a. Buttons, Textfelder und Platzhalter für Grafiken in Form von Klassen mitgeliefert. In der gängigsten Variante werden die einzelnen Komponenten in Eclipse zusammen geklickt und in Form einer XML Datei gespeichert. Daraufhin muss einer Activity die entsprechende XML Datei zugewiesen werden, sodass man den einzelnen Views Funktionen zuordnen kann. Für ein einheitliches und persönliches Design bedarf es aber Themes und Styles.

Beispiel XML Code für eine Textview:

<TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:textColor="#00FF00"
    android:typeface="monospace"
    android:text="@string/hello" />

Die jeweiligen Attribute beschreiben dabei das Design. Die Breite soll sich an der Breite der Parentnode anpassen und die Höhe am Text. Zusätzlich wird die Schriftart und die Farbe festgelegt. Der anzuzeigende String wird in einer Extra XML Datei namens String festgesetzt und hier in der letzten Zeile referenziert, sodass sich alle Strings an einer Stelle befinden.  Um die Attribute nicht für jede TextView erneut eingeben zu müssen, lassen sich Styles definieren. Dadurch wird der Text auf den folgenden Code verkürzt:

<TextView
    style="@style/CodeFont"
    android:text="@string/hello" />

Ein positiver Nebeneffekt ist, dass eine Änderung an der Style Vorlage direkt alle Komponenten ändert.

Wie wird nun also ein Style definiert?

Im Ordner res/values muss eine neue XML Datei angelegt werden, die einzelne Styles beinhaltet. Diesem Style müssen dann nur noch die jeweiligen Attribute zugeordnet werden. Insgesamt sehr simpel zu realisieren und kann eine Menge an Arbeit sparen.

Zusätzlich zu Styles existieren auch Themes.

Ein zu einer View zugeordneter Style ist nur für diese einzelne View zuständig. Um diesen Style aber auf alle Views zu erweitern, lässt sich ein Theme spezifizieren. Um ein Theme für das komplette Programm zu nutzen, muss das Theme der Android Manifest bekannt gemacht werden. Um ein Theme aber nur einer bestimmten Activity zuzuordnen, kann man dies in der jeweiligen Activity Deklaration in der Android Manifest tun.

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: