In diesem Tutorial lernen Sie die Grundlagen zum Erstellen von Layouts für Android-Schnittstellen mit XML. Weiter lesen!
Wenn Sie mit der Entwicklung von Android-Apps mit Eclipse und dem ADT-Plugin beginnen, ist der leistungsfähige grafische Layout-Editor von Eclipse ein hervorragender Ort, um Ihre Benutzeroberfläche visuell zu gestalten. Allerdings hat dieser Ansatz "was Sie sehen, was Sie bekommen" seine Grenzen, und irgendwann müssen Sie zu XML wechseln.
Einer der wichtigsten Vorteile der Deklaration Ihrer Benutzeroberfläche in XML ist die Möglichkeit, die Benutzeroberfläche und das Verhalten Ihrer App voneinander zu trennen. So haben Sie die Möglichkeit, die Präsentation Ihrer App anzupassen, ohne die zugrunde liegende Funktionalität zu beeinträchtigen.
In diesem Artikel zeige ich Ihnen, wie Sie ein grundlegendes XML-Layout von Grund auf entwerfen, einschließlich der Definition des Stammelements, der Angabe von Parametern für Höhe und Breite sowie dem Hinzufügen einiger grundlegender Elemente der Benutzeroberfläche. Abschließend verwende ich dieses grundlegende Layout, um einige erweiterte XML-Optionen zu demonstrieren, z. B. das Zuweisen von unterschiedlichem Speicherplatz zu verschiedenen Objekten und die ersten Schritte mit String-Ressourcen.
Hinweis: In Android sollten XML-Layouts im Verzeichnis res / layout mit der Erweiterung .xml gespeichert werden.
Zunächst werden wir uns an XML gewöhnen, indem wir eine sehr einfache Android-Benutzeroberfläche erstellen, die die Ansichtsgruppe LinearLayout verwendet, um ein Kontrollkästchenelement aufzunehmen. Öffnen Sie die Datei res / layouts / activity_main.xml und lassen Sie uns loslegen.
Die Benutzeroberfläche muss ein einziges Stammelement enthalten, das als visueller Container für alle Ihre anderen Elemente dient. Das Stammelement kann entweder eine ViewGroup (d. H. LinearLayout, ListView, GridView), ein Zusammenführungselement oder eine View sein, es muss jedoch den XML-Namespace enthalten. In diesem Beispiel verwende ich LinearLayout, eine ViewGroup, die alle untergeordneten Elemente in einer angegebenen Richtung ausrichtet.
Ein LinearLayout besteht aus dem Öffnen und Schließen von XML-Tags:
< LinearLayout… >
Auf der sich öffnenden Registerkarte müssen Sie den XML-Namespace definieren. Dies ist ein vom W3C empfohlener Standard. Das Definieren des XML-Namensraums in Android ist einfach. Geben Sie einfach den folgenden Code und die folgende URL als Teil des öffnenden LinearLayout-Tags ein:
xmlns: android = "http://schemas.android.com/apk/res/android"
Geben Sie als Nächstes die Parameter width und height für Ihr Stammelement an. In den meisten Fällen verwenden Sie den Wert "fill_parent" für das Wurzelelement, da dieses die gesamte Bildschirmanzeige des Geräts übernimmt.
Geben Sie das folgende XML für die Parameter Höhe / Breite ein:
android: layout_width = "fill_parent" android: layout_height = "fill_parent">
Ihr XML sollte jetzt so aussehen:
Es ist Zeit, dieser leeren Leinwand etwas hinzuzufügen! Geben Sie das Anfangs-Tag für Ihr Kontrollkästchen ein. Da es sich um ein UI-Element handelt, ist einige zusätzliche XML erforderlich:
1) Identifizieren Sie Ihren Artikel
Eclipse verwendet eine Ganzzahl-ID, um verschiedene Oberflächenelemente innerhalb einer Baumstruktur zu identifizieren. Dies sollte als Zeichenfolge mit dem Attribut 'id' und der folgenden Syntax referenziert werden:
android: id = "@ + id / name"
In diesem Beispiel beziehen wir uns auf dieses UI-Element als 'CheckBox:'.
android: id = "@ + id / CheckBox"
2) Width / Height-Parameter: wrap_content
Wieder müssen Sie die Parameter für Höhe / Breite eingeben. Wenn Sie dieses Attribut auf 'wrap_content' setzen, wird das entsprechende Element groß genug angezeigt, um die Inhaltsgröße zu berücksichtigen. Wir können die Höhe / Breite-Syntaxstruktur von früher wiederverwenden und 'fill_parent' durch 'wrap_content:' ersetzen.
android: layout_width = "wrap_content" android: layout_height = "wrap_content"
3) Stellen Sie Ihren Text ein
Schließlich müssen Sie den Text angeben, der neben dem Kontrollkästchen angezeigt werden soll. Wir setzen das Kontrollkästchen auf "Ja":
android: text = "yes" />
Ihr XML sollte jetzt so aussehen:
Führen Sie Ihren Code im Android-Emulator aus, um Ihr XML in Aktion zu sehen!
Im zweiten Teil dieses Tutorials werden wir uns mit etwas weiterem XML befassen, um Ihre Benutzeroberfläche zu optimieren. Wir erstellen ein Layout, das aus zwei Schaltflächen besteht, und verwenden dann das Attribut 'weight', um den Prozentsatz des Layoutbereichs zu ändern, der jedem zugewiesen ist, bevor kurz auf die Grundlagen der String-Ressourcen eingegangen wird.
Der erste Schritt besteht darin, die Barebones Ihres Layouts zu erstellen. Wir werden das LinearLayout-Wurzelelement aus dem vorherigen Beispiel zusammen mit den width / height-Parametern und natürlich dem XML-Namespace wiederverwenden:
Um die erste Schaltfläche zu erstellen, fügen Sie das Anfangs-Tag 'Button' und die Ganzzahl-ID mit dem Elementnamen 'button1' hinzu.