2016-04-08 6 views
2

Ich würde gerne wissen, gibt es eine Möglichkeit zu definieren oder zu verwenden mehrere Stile Dateien (Multiple, style.xml files) in Android, anstatt der einzelnen style.xml Datei, die in der res Ordner der Application Project vorhanden ist. Zurzeit verwende ich eine einzige Style-Datei (style.xml). Aber die Größe der style.xml Datei ist riesig aufgrund meiner vielen benutzerdefinierten und selbstdefinierten Stile.Gibt es eine Möglichkeit, mehrere Stildateien zu definieren, um einen einzigen großen in Android zu vermeiden?

hatte ich durch viele Tutorials und Beispiele gegangen, aber all diese Tutorial und Beispiel bietet Websites und sogar die developer.android.com Website zeigt, wie und verwenden definieren Style aber keiner der jede Seite sagt, ob es möglich ist, Multiple style.xml files von der Make einzelne style.xml Datei, so dass die Größe der Datei reduziert werden kann.

Jede Hilfe wäre willkommen ...

Antwort

8

Sie sind willkommen, so viele Ressourcen definieren Stile haben, wie Sie möchten, zumindest im Rahmen des Zumutbaren. Es gibt wahrscheinlich ein Limit für die Anzahl der Dateien, aber es ist mindestens in den Hunderten und möglicherweise in den niedrigen Milliarden.

In res/values/ und res/values-*/ Verzeichnisse, Dateinamen keine Rolle. Wir verwenden Konventionen, um Ressourcen in Dateien einzufügen, die nach der Ressource benannt sind, z. B. styles.xml. Das ist nur ein Organisationssystem. Sie können gerne so viele Dateien mit <style> Ressourcen haben, wie Sie wollen, benannt, was immer Sie wollen (solange sie gültige Ressourcendateinamen sind).

Zum Beispiel in Ihrem Android-SDK, wenn Sie platforms/android-.../data/res/values/ gehen (für einen Wert von ..., basierend auf den installierten SDKs), werden mehrere Dateien angezeigt, die Stil Ressourcen enthalten:

  • styles.xml
  • styles_*.xml wie styles_holo.xml
  • themes.xml
  • themes_*.xml wie themes_material.xml
+0

Nun, wenn ich meine EditText Style in einer style.xml und TextView Style in anderen style.xml, zum Beispiel definieren. Ist es möglich? Und wenn ja, wie kann ich es erreichen? Könnten Sie bitte elaborieren? –

+0

... und wie verweisen Sie auf diese anderen Stylesheets? Angenommen, ich habe 'res/values ​​/ styles.xml' und' res/values ​​/ styles_02.xml' und 'res/values ​​/ styles_buttons.xml' – dsdsdsdsd

+2

@ dsdsdsdsd: "und wie verweisen Sie auf diese anderen Stylesheets" - Sie verweisen nicht auf "Stylesheets". Sie verweisen auf die in diesen Dateien definierten Stilressourcen. Die Dateinamen in 'res/values ​​/' und 'res/values ​​- * /' spielen keine Rolle. – CommonsWare

1

Sie können diese Stile in jeder gewünschten Datei haben, es spielt keine Rolle, solange Ihre Dateinamen gültig sind. Damit. Zum Beispiel können Sie eine Style-Datei nur für Buttons erstellen. Mach dir keine Sorgen über die Reihenfolge, die Stile für alle Dateien werden analysiert und angewendet.

+0

Nun, wenn ich meinen EditText Style in einer style.xml und TextView Style in anderen style.xml, zum Beispiel definieren. Ist es möglich? Und wenn ja, wie kann ich es erreichen? Wie lauten die Namen meiner styles.xml-Dateien in diesem Fall? Könnten Sie bitte elaborieren? –

Verwandte Themen