Xamarin.Forms Layouts

Xamarin.Forms Layouts werden zum Verfassen von Benutzeroberflächensteuerelementen in visuelle Strukturen verwendet.

Die Layout Klassen in Layout<T>Xamarin.Forms sind spezielle Untertypen von Ansichten, die als Container für Ansichten und andere Layouts fungieren. Die Layout Klasse selbst wird von View. Ein Layout Ableitung enthält in der Regel Logik zum Festlegen der Position und Größe von untergeordneten Elementen in Xamarin.Forms Anwendungen.

Xamarin.Forms Layouttypen

Die von ihnen abgeleiteten Layout Klassen können in zwei Kategorien unterteilt werden:

Layouts mit einzelnem Inhalt

Diese Klassen werden abgeleitet von Layout, die definiert Padding und IsClippedToBounds Eigenschaften:

Typ Beschreibung Erscheinungsbild
ContentView ContentView enthält ein einzelnes untergeordnetes Element, das mit der Content Eigenschaft festgelegt wird. Die Content Eigenschaft kann auf ein beliebiges View Ableitungsobjekt festgelegt werden, einschließlich anderer Layout Derivate. ContentView wird hauptsächlich als strukturelles Element verwendet und dient als Basisklasse für Frame.

API-Dokumentationshandbuch /
ContentView-Beispiel
C#-Code für diese XAML-Seite /
Frame Die Frame Klasse wird von einem Rahmen oder Rahmen um das untergeordnete Element abgeleitet ContentView und angezeigt. Die Frame Klasse hat einen Standardwert Padding von 20 und definiert BorderColorauch , CornerRadiusund HasShadow eigenschaften.

API-Dokumentationshandbuch /
Framebeispiel
C#-Code für diese XAML-Seite /
ScrollView ScrollView ist in der Lage, den Inhalt zu scrollen. Legen Sie die Content Eigenschaft auf eine Ansicht oder ein Layout zu groß fest, damit sie auf den Bildschirm passen. (Der Inhalt einer Datei ScrollView ist sehr oft ein StackLayout.) Legen Sie die Orientation Eigenschaft fest, um anzugeben, ob der Bildlauf vertikal, horizontal oder beides sein soll.

API-Dokumentationshandbuch /
ScrollView-Beispiel
C#-Code für diese XAML-Seite /
TemplatedView TemplatedView zeigt Inhalt mit einer Steuerelementvorlage an und ist die Basisklasse für ContentView.

API-Dokumentationshandbuch /
TemplatedView-Beispiel
ContentPresenter ContentPresenter ist ein Layout-Manager für vorlagenbasierte Ansichten, der in einer ControlTemplate Datei verwendet wird, um zu markieren, wo der anzuzeigende Inhalt angezeigt wird.

API-Dokumentationshandbuch /
ContentPresenter-Beispiel

Layouts mit mehreren untergeordneten Elementen

Diese Klassen werden von Layout<View>:

Typ Beschreibung Erscheinungsbild
StackLayout StackLayout Positioniert untergeordnete Elemente in einem Stapel horizontal oder vertikal basierend auf der Orientation Eigenschaft. Die Spacing Eigenschaft steuert den Abstand zwischen den untergeordneten Elementen und weist den Standardwert 6 auf.

API-Dokumentationshandbuch /
StackLayout-Beispiel
C#-Code für diese XAML-Seite /
Grid Grid positioniert seine untergeordneten Elemente in einem Raster von Zeilen und Spalten. Die Position eines untergeordneten Elements wird mithilfe der angefügten EigenschaftenRow, Column, , RowSpanund ColumnSpan.

API-Dokumentationshandbuch /
Rasterbeispiel
C#-Code für diese XAML-Seite /
AbsoluteLayout AbsoluteLayout positioniert untergeordnete Elemente an bestimmten Positionen relativ zum übergeordneten Element. Die Position eines untergeordneten Elements wird mithilfe der angefügten EigenschaftenLayoutBounds und LayoutFlags. Es AbsoluteLayout ist nützlich, die Positionen von Ansichten zu animieren.

API-Dokumentationshandbuch /
AbsoluteLayout-Beispiel
C#-Code für diese XAML-Seite / mit CodeBehind
RelativeLayout RelativeLayout positioniert untergeordnete Elemente relativ zum RelativeLayout selbst oder zu ihren gleichgeordneten Elementen. Die Position eines untergeordneten Elements wird mithilfe der angefügten Eigenschaften angegeben, die auf Objekte des Typs und BoundsConstraintdes Typs Constraint festgelegt sind.

API-Dokumentationshandbuch /
RelativeLayout(Beispiel)
C#-Code für diese XAML-Seite /
FlexLayout FlexLayout basiert auf dem CSS Flexible Box Layout Module, das allgemein als Flexlayout oder Flexbox bezeichnet wird. FlexLayout definiert sechs bindungsfähige Eigenschaften und fünf angefügte bindungsfähige Eigenschaften, mit denen untergeordnete Elemente gestapelt oder mit vielen Ausrichtungs- und Ausrichtungsoptionen umschlossen werden können.

API-Dokumentationshandbuch /
FlexLayout-Beispiel
C#-Code für diese XAML-Seite /