Übung: Verwenden von Grid zum Erstellen einer Benutzeroberfläche
In dieser Übung verwenden Sie ein Grid
, um die Ansichten auf der Benutzeroberfläche anzuordnen. Der erste Screenshot zeigt das Startprojekt, der zweite das abgeschlossene Projekt. Ihre Aufgabe ist es, ein Grid
-Element zu verwenden, um das Startprojekt zur abgeschlossenen Version zu entwickeln.
Öffnen der Startprojektmappe
Die Startprojektmappe enthält eine vollständig funktionsfähige App für die Berechnung von Trinkgeldern.
Öffnen Sie das Projekt TipCalculator im Ordner exercise3start in Ihrem geklonten oder heruntergeladenen Übungsrepository.
Öffnen Sie MainPage.xaml. Beachten Sie, dass alle Ansichten in einem einzigen vertikalen
StackLayout
platziert werden.
Erstellen eines Grid-Layouts
Erstellen Sie ein Grid
, das Ansichten enthalten soll.
Fügen Sie
40
Einheiten für den Abstand zurContentPage
hinzu, um ein Überlappen der Benutzeroberfläche und der Statusleiste von iOS zu vermeiden.<ContentPage ... Padding="40">
Ändern Sie das Layoutpanel von
StackLayout
zuGrid
.Definieren Sie sieben Zeilen und zwei Spalten für das
Grid
. Legen Sie für alle Zeilen mit Ausnahme der vierten die GrößeneinstellungAuto
fest. Die vierte Zeile sollStar
verwenden, um den gesamten zusätzlichen Platz zu erhalten. VerwendenStar
für die Größenanpassung für beide Spalten.<Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="*" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="*" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions>
Positionieren der Ansichten in den Zellen
Sie haben die Grid
-Struktur definiert. Nun müssen Sie die Ansichten zum Grid
hinzufügen. Dazu verwenden Sie die angefügten Eigenschaften Grid.Row
und Grid.Column
.
Fügen Sie Einstellungen für
Grid.Row
undGrid.Column
zu jeder Ansicht hinzu, um sie zur entsprechenden Zelle imGrid
hinzuzufügen. Anhand des folgenden Screenshots können Sie ermitteln, wo jedes View-Element platziert werden soll:Richten Sie die - und
Entry
-Elemente für Bill ein, indem SieVerticalOptions
imEntry
-Element aufCenter
festlegen.Fügen Sie eine Einstellung für
Grid.ColumnSpan
für dasSlider
-Element hinzu, sodass dieses zwei Spalten umfasst:<Slider ... Grid.ColumnSpan="2" ... />
Suchen Sie das
Label
-Element mit dem TextLabel
. Legen Sie das Element so fest, dass es die untere linke Position im Rechteck einnimmt:<Label Text="Tip Percentage" VerticalOptions="End" HorizontalOptions="Start" ... />
Suchen Sie das
Label
-ElementLabel
. Legen Sie das Element so fest, dass es die untere rechte Position im Rechteck einnimmt:<Label x:Name="tipPercent" VerticalOptions="End" HorizontalOptions="End" ... />
Untersuchen der Ergebnisse
Führen Sie die Anwendung aus, und sehen Sie sich die Unterschiede auf der Benutzeroberfläche an. Sie haben ein Grid
verwendet, um das Aussehen einer vorhandenen Benutzeroberfläche zu verbessern. Grid
ist leistungsfähiger als StackLayout
. Insbesondere vereinfacht Grid
die zeilenübergreifende Ausrichtung von Ansichten.