Show TOC Anfang des Inhaltsbereichs

Hintergrunddokumentation Layout-Grundlagen Dokument im Navigationsbaum lokalisieren

Das Layout steuert die Positionierung von Oberflächenelementen in ihrem enthaltenden UIElementContainer. Dazu können Sie an jedem Container ein Objekt vom Typ Layout anfügen. Für jedes in diesem Container enthaltene Kindobjekt können Sie jeweils ein dazu passendes Objekt vom Typ LayoutData anfügen. LayoutData steuert die Layouteigenschaften des jeweiligen Kinds, z.B. könnte dies die Position in einem durch das Layout definierten Koordinatensystem sein.

Diese Grafik wird im zugehörigen Text erklärt

Jeder Oberflächenelement-Container aggregiert ein entsprechendes Layout-Objekt, welches beschreibt, wie die eingefügten Oberflächenelement-Kinder innerhalb des Containers angeordnet werden. Der Typ dieses Layout-Objekts ist eine Unterklasse der abstrakten Basisklasse Layout.

Folgende Layout-UI-Elemente werden zur Anordnung der Oberflächenelemente in einer View angeboten:

·        FlowLayout

Ein FlowLayout ordnet die Container-Kinder sequenziell an, was heißt, dass beispielsweise keine definierten Zeilenumbrüche beschrieben werden können. Ein FlowLayout hängt damit von der Client-Technologie und auch von der Größe des Browser-Fensters ab.

·        MatrixLayout

Ein MatrixLayout ordnet die Container-Kinder ähnlich dem GridLayout in einer tabellenartigen Struktur an. Mit den Eigenschaften stretchedHorizontally und stretchedVertically können Sie festlegen, ob die Oberflächenelemente auf die Containergröße angepasst werden. Im Unterschied zum GridLayout können Sie beispielsweise die Spaltenanzahl nicht explizit definieren, sondern Sie ordnen einem Oberflächenelement ein MatrixHeadData zu, dann wird dieses Oberflächenelement in die nächste Zeile umgebrochen. Ein großer Vorteil bei der Verwendung des MatrixLayout gegenüber dem GridLayout liegt im einfachen Erstellen von einheitlichen Layout-Strukturen, die durch die angebotenen Zellklassen ermöglicht werden.

·        RowLayout

Ein RowLayout verhält sich ähnlich wie das Matrix-Layout, jedoch ordnet es die Oberflächenelemente fortlaufend in einer einzigen Spalte an. Wenn Sie einem Oberflächenelement ein RowHeadData zuordnen, dann wird genau dieses Oberflächenelement in die nächste Zeile umgebrochen. Ein großer Vorteil bei der Verwendung des RowLayout liegt im einfachen Erstellen von einheitlichen Layout-Strukturen durch die vordefinierten Zellklassen, so wie diese auch im Matrix-Layout angeboten werden

·        GridLayout

Hinweis

Verwenden Sie anstelle des GridLayouts möglichst das MatrixLayout.

Ein GridLayout ordnet die Container-Kinder in einem zweidimensionalen Gitter mit definierter Spaltenanzahl und beliebig vielen Zeilen an. Zeilenumbrüche können definiert werden. Sie werden automatisch ausgeführt, wenn ein Oberflächenelement nicht mehr innerhalb einer Zeile angezeigt werden kann.

 

Ende des Inhaltsbereichs