Layoutressource
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Eine Layoutressource definiert die Architektur der UI in einem Activity
- oder
Komponente einer Benutzeroberfläche.
- Dateispeicherort:
res/layout/filename.xml
Der Dateiname wird als Ressourcen-ID verwendet.
- Datentyp der kompilierten Ressource:
- Ressourcenzeiger auf eine Ressource vom Typ
View
(oder abgeleitete Klasse)
- Ressourcenreferenz:
-
In Java:
R.layout.filename
XML: @[package:]layout/filename
- Syntax:
-
<?xml version="1.0" encoding="utf-8"?>
<ViewGroup
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@[+][package:]id/resource_name"
android:layout_height=["dimension" | "match_parent" | "wrap_content"]
android:layout_width=["dimension" | "match_parent" | "wrap_content"]
[ViewGroup-specific attributes] >
<View
android:id="@[+][package:]id/resource_name"
android:layout_height=["dimension" | "match_parent" | "wrap_content"]
android:layout_width=["dimension" | "match_parent" | "wrap_content"]
[View-specific attributes] >
<requestFocus/>
</View>
<ViewGroup >
<View />
</ViewGroup>
<include layout="@layout/layout_resource"/>
</ViewGroup>
Hinweis:Das Stammelement kann ein
ViewGroup
-, View
- oder <merge>
-Element, aber es kann nur
ein Stammelement, das das Attribut xmlns:android
und das android
-Attribut enthalten muss
-Namespace, wie im vorherigen Syntaxbeispiel gezeigt.
- Elemente:
-
<ViewGroup>
- Ein Container für andere
View
-Elemente. Es gibt viele
verschiedene Arten von ViewGroup
-Objekten, mit denen Sie
das Layout der untergeordneten Elemente auf unterschiedliche Weise angeben. Verschiedene Arten von
Zu den ViewGroup
-Objekten gehören LinearLayout
,
RelativeLayout
und FrameLayout
.
Nicht davon ausgehen, dass eine Ableitung von ViewGroup
akzeptiert verschachtelte Ansichten. Einige Datenansichtsgruppen
Implementierungen der AdapterView
-Klasse, die bestimmt,
seine untergeordneten Elemente nur aus einem Adapter
.
Attribute:
android:id
- Ressourcen-ID. Ein eindeutiger Ressourcenname für das Element, den Sie
verwenden, um einen Verweis auf
ViewGroup
aus Ihrer Anwendung zu erhalten. Weitere Informationen
Weitere Informationen
android:layout_height
- Dimension oder Keyword: Erforderlich. Die Höhe der Gruppe als
Dimensionswert (oder
Dimensionsressource) oder ein Keyword
(
"match_parent"
oder "wrap_content"
) Weitere Informationen
finden Sie unter Werte für android:layout_height und
android:layout_width.
android:layout_width
- Dimension oder Keyword: Erforderlich. Die Breite für die Gruppe als
Dimensionswert (oder
Dimensionsressource) oder ein Keyword
(
"match_parent"
oder "wrap_content"
) Weitere Informationen
finden Sie unter Werte für android:layout_height und
android:layout_width.
Das ViewGroup
Basisklasse unterstützt mehr Attribute, und viele weitere werden von jeder Implementierung von
ViewGroup
Zu Referenz aller verfügbaren Attribute
finden Sie in der entsprechenden Referenzdokumentation zur Klasse ViewGroup
.
zum Beispiel die XML-Datei LinearLayout
Attribute
<View>
- Eine einzelne UI-Komponente, die im Allgemeinen als Widget bezeichnet wird. Unterschiedlich
Zu den Arten von
View
-Objekten gehören TextView
,
Button
und CheckBox
.
Attribute:
android:id
- Ressourcen-ID. Ein eindeutiger Ressourcenname für das Element, mit dem Sie
einen Verweis auf
View
aus Ihrer Anwendung abrufen. Weitere Informationen
Weitere Informationen
android:layout_height
- Dimension oder Keyword: Erforderlich. Die Höhe des Elements,
einen Dimensionswert (oder
Dimensionsressource) oder ein Keyword
(
"match_parent"
oder "wrap_content"
) Weitere Informationen
finden Sie unter Werte für android:layout_height und
android:layout_width.
android:layout_width
- Dimension oder Keyword: Erforderlich. Die Breite für das Element, wie
einen Dimensionswert (oder
Dimensionsressource) oder ein Keyword
(
"match_parent"
oder "wrap_content"
) Weitere Informationen
finden Sie unter Werte für android:layout_height und
android:layout_width.
Das View
Basisklasse unterstützt mehr Attribute, und viele weitere werden von jeder Implementierung von
View
Weitere Informationen finden Sie unter Layouts. Für
eine Referenz aller verfügbaren Attribute,
finden Sie in der entsprechenden Referenzdokumentation, z. B. in den XML-Attributen von TextView
.
<requestFocus>
- Jedes Element, das ein
View
-Objekt darstellt, kann dieses leere Element enthalten.
Dadurch wird der übergeordnete Bildschirm in den Fokus rücken. Sie können nur eine dieser Optionen nutzen
Elemente pro Datei.
<include>
- Fügt diesem Layout eine Layoutdatei hinzu.
Attribute:
layout
- Layoutressource: Erforderlich. Verweis auf ein Layout
.
android:id
- Ressourcen-ID. Überschreibt die ID, die der Stammansicht im eingeschlossenen Layout zugewiesen wurde.
android:layout_height
- Dimension oder Keyword: Überschreibt die der Stammansicht zugewiesene Höhe in der
enthaltene Layout. Nur wirksam, wenn auch
android:layout_width
deklariert ist.
android:layout_width
- Dimension oder Keyword: Überschreibt die der Stammansicht zugewiesene Breite in der
enthaltene Layout. Nur wirksam, wenn auch
android:layout_height
deklariert ist.
In <include>
können Sie beliebige weitere Layoutattribute hinzufügen, die
vom Stammelement im enthaltenen Layout unterstützt werden, und überschreiben die in der
Stammelement.
Achtung:Wenn Sie Layoutattribute mit
<include>
-Tag müssen Sie beide überschreiben,
android:layout_height
und android:layout_width
, um
weitere Layout-Attribute wirksam werden.
Eine weitere Möglichkeit zum Einfügen eines Layouts ist die Verwendung von ViewStub
: ein
-Ansicht, die keinen Layoutraum einnimmt,
bis Sie sie explizit aufblähen. Dabei ist auch ein
Layoutdatei, die durch ihr android:layout
-Attribut definiert ist. Weitere Informationen zur Verwendung von ViewStub
finden Sie unter Laden
On-Demand-Aufrufe.
<merge>
- Ein alternatives Stammelement, das nicht in der Layouthierarchie gezeichnet ist. Dies wird als
Stammelement ist nützlich, wenn Sie wissen, dass dieses Layout
die bereits das entsprechende übergeordnete Element
View
für die untergeordneten Elemente enthält.
<merge>
-Element.
Dies ist besonders nützlich, wenn Sie dieses Layout
in einer anderen Layoutdatei mit <include>
und
Für dieses Layout ist kein anderer ViewGroup
-Container erforderlich. Weitere Informationen
Informationen zum Zusammenführen von Layouts finden Sie unter Layouts mit <include> wiederverwenden.
Wert für android:id
Für den ID-Wert verwenden Sie normalerweise die Syntax "@+id/name"
, wie im folgenden Beispiel gezeigt. Die
Das Pluszeichen +
gibt an, dass es sich um eine neue Ressourcen-ID handelt. Das aapt
-Tool erstellt
eine neue Ressourcen-Ganzzahl in der Klasse R.java
, falls noch nicht vorhanden.
<TextView android:id="@+id/nameTextbox"/>
Der Name nameTextbox
ist jetzt eine Ressourcen-ID, die an dieses Element angehängt wird. Sie können dann
sich auf die TextView
beziehen, der die ID in Java zugeordnet ist:
Kotlin
val textView: TextView? = findViewById(R.id.nameTextbox)
Java
TextView textView = findViewById(R.id.nameTextbox);
Dieser Code gibt das Objekt TextView
zurück.
Wenn Sie jedoch bereits eine ID-Ressource definiert haben und diese nicht
bereits verwendet wird, können Sie diese ID auf ein View
-Element anwenden, indem Sie die
Pluszeichen im Wert android:id
.
Werte für android:layout_height und
android:layout_width
Die Werte für Höhe und Breite werden mit einem der
Dimension
Einheiten, die von Android unterstützt werden (px, dp, sp, pt, in, mm) oder mit den folgenden Keywords:
Wert | Beschreibung |
match_parent |
Legt die Dimension so fest, dass sie mit der des übergeordneten Elements übereinstimmt. In API-Ebene 8 hinzugefügt zu
fill_parent verwerfen. |
wrap_content |
Legt die Dimension nur auf die Größe fest, die für den Inhalt dieses Elements erforderlich ist. |
Benutzerdefinierte Ansichtselemente
Sie können benutzerdefinierte View
und ViewGroup
erstellen
und wenden sie wie bei einem Standardlayout auf Ihr Layout an.
-Elements. Sie können auch die Attribute angeben, die im XML-Element unterstützt werden. Weitere Informationen
Siehe Komponenten für benutzerdefinierte Ansichten erstellen.
- Beispiel:
- XML-Datei gespeichert unter
res/layout/main_activity.xml
:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello, I am a TextView" />
<Button android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello, I am a Button" />
</LinearLayout>
Dieser Anwendungscode lädt das Layout für ein Activity
im
onCreate()
-Methode:
-
Kotlin
public override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.main_activity)
}
Java
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
}
- Siehe auch:
-
Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.
Zuletzt aktualisiert: 2024-09-20 (UTC).
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2024-09-20 (UTC)."],[],[]]