Whether to add item spacing after the last child in each row.
IHosannaView
OptionalaudioThis hint can be used in conjunction with the audio guide item
OptionalaudioIndicates whether the element can receive focus.
These are the children that are rendered on screen in the tree structure of the view
Number of columns in the grid.
Indicdates whether the view is a focus group which means it can have a focused child Otherwise it will be focused itself
OptionalcustomOptionalfocusedPrivategridTotal height of the grid.
PrivategridTotal width of the grid.
Horizontal alignment of the grid content.
Indicates whether the element is currently focused.
If true, this view has been presented in an AggregateViewController
Spacing between items, as a number or [horizontal, vertical] tuple.
PrivatelayoutList of child views to be laid out in the grid.
OptionalparentPrivaterowHeights of each row in the grid.
PrivaterowWidths of each row in the grid.
PrivatespacingCached spacing constants [horizontal, vertical].
These are the children that were created in getViews, in a flat strcuture - it contains EVERYTHING that we declared.
Vertical alignment of the grid content.
The IHosannaView subclass that created us in getViews
Indicates whether the navigatable entity is visible.
PrivatexHorizontal offset for grid alignment.
PrivateyVertical offset for grid alignment.
Children
OptionalmountTarget: IHosannaView<ViewState>View Creation
OptionalnextState: GridGroupStateBuilds the view and attaches it to the view owner.
OptionalmountTarget: IHosannaView<ViewState>The target to mount the view.
The built view or undefined.
Optionaloptions: IScreenDismissOptionsOptionalargs: Record<string, unknown>OptionalcancellationToken: HsCancellationTokenAsync Support
Optionalargs: Record<string, unknown>Optionalcallback: AsyncCommandEventCallbackFinds the next focusable child in the specified direction.
The focus resolution event.
The next focusable view or undefined.
Audio guide support
Measurement
PrivategetReturns the grid height, using the configured height if set.
The measured grid height.
The height to use for the grid.
PrivategetCalculates the widths and heights of each row, and the total grid dimensions.
An object containing rowWidths, rowHeights, gridHeight, and gridWidth.
PrivategetReturns the grid width, using the configured width if set.
The measured grid width.
The width to use for the grid.
PrivategetReturns the spacing constants as a [horizontal, vertical] tuple.
The spacing constants.
Rendererers
PrivategetCalculates the horizontal offset for grid alignment.
The total width of the grid.
The x offset.
PrivategetCalculates the vertical offset for grid alignment.
The total height of the grid.
The y offset.
Hibernates the view and its subviews by releasing native renderers and setting the view phase to Hibernating.
The view to be added as a subview.
index of the child in the parent view, -1 means add to end
Focus
Lays out the grid group view at the specified position.
The x-coordinate.
The y-coordinate.
The width of the parent container.
The height of the parent container.
Lays out the child views in the grid according to the current configuration.
Measures the grid group and its children, updating layout properties.
Called when the navigatable entity is shown.
DO NOT CALL THIS METHOD DIRECTLY DO NOT OVERRIDE IT
Called after the navigatable entity has been added to an aggregate view.
The aggregate view to which the entity has been added.
Called after the navigatable entity has been removed from an aggregate view.
The aggregate view from which the entity has been removed.
Called when the navigatable entity is hidden.
Handles focus events for the grid group view.
Handles a key event.
The key event to handle.
True if the key event was handled, false otherwise.
Called before the navigatable entity is added to an aggregate view.
The aggregate view to which the entity will be added.
This method is called before applying state changes to the view. It is used to perform any necessary preparations before the state changes are applied.
Called before the navigatable entity is removed from an aggregate view.
The aggregate view from which the entity will be removed.
Presents a new screen in the navigation stack or as a dialog.
The screen to be presented, represented by a ViewStruct<ViewState>.
Optionaloptions: IScreenPresentationOptionsOptional presentation options.
If true, the screen will be presented as a dialog.
If true, the screen transition will be animated.
Renders the grid group view with the given state changes.
Partial state changes to apply.
Navigatable View
Wakes up the view and its subviews by reserving native renderers and setting the view phase to Mounted.
GridGroupView is a composite view for displaying children in a grid layout.
Remarks