Ich bin auf der Suche nach dem richtigen Layout von Komponenten in Android. Ich bin ein erfahrener CSS / MXML-Entwickler und habe die schwierigste Zeit, die Layouteigenschaften von Android-Komponenten vollständig zu verstehen.
Eine Sache ist, ich bin nicht sicher, die Unterschiede zwischen diesen:
Sollten Sie eine über die andere mit linearen, Tabellen- oder relativen Layouts verwenden? Ein Beispiel für etwas, das ich gerne lernen würde, ist eine Gesamtmarge auf einem Layout mit separaten Komponenten, die sich auf die obere / mittlere / untere Seite des Bildschirms beziehen. Die SDK-Dokumente sind ein guter Anfang, aber sie zeigen nicht, wie die Dinge in verschiedenen Situationen funktionieren.
Irgendwelche Tipps, wo Sie hingehen müssen, um ein komplexeres / umfassenderes Layout-Design zu erlernen?
Jedes Attribut mit dem Präfix layout_
ist ein LayoutParams
Attribut. Während die meisten Ansichtsattribute während der Konstruktion der Ansicht von der Ansicht selbst analysiert werden, sind LayoutParams spezielle Argumente für die übergeordnete Ansicht, die Hinweise darauf geben, wie die Größe und Position der untergeordneten Ansicht durch das übergeordnete Element festgelegt werden sollte. Welche LayoutParams in einer Ansicht gültig sind, hängt vollständig vom Typ der übergeordneten Ansicht ab.
layout_margin
ist daher eine Anweisung an eine Elternansicht, die Ränder unterstützt. Es sagt, "setzen Sie so viel Platz zwischen mir und anderen Ansichten oder der Kante des Elternteils." Padding ist Platz in einer Ansicht zwischen
die Kanten und der Inhalt der Ansicht.
layout_gravity
ist die Schwerkraft für ein einzelnes Kind in seinem Elternteil. gravity
beeinflusst den Inhalt der Ansicht, in der es angezeigt wird.
Welche Sie verwenden, hängt von dem Ergebnis ab, das Sie erzielen möchten. Wenn Sie möchten, dass ein Layout zwischen seinen Kanten und dem gesamten Inhalt einen festen Abstand hat, möchten Sie einen Abstandhalter. Wenn Sie die Kanten des Layouts um eine bestimmte Entfernung verschieben möchten, möchten Sie Ränder. Wenn Sie Layouts ohne Hintergrund festlegen, können diese beiden visuell gleichwertig sein. Wenn Sie mit der Erstellung komplexer UIs beginnen, bei denen Layouts 9-Patch-Hintergründe haben, die den Inhalt visuell gruppieren, werden die Unterschiede offensichtlich.
Ich hoffe, Sie können den Unterschied zwischen Padding und Rand sehen. Die Polsterung ist ein Innenabstand, während der Rand außerhalb des Abstandes liegt.
Tags und Links android android-layout android-styles