JsonWidgetBuilder class abstract

Builder that builds dynamic widgets from JSON or other Map-like structures. Applications can register their own types and builders through the JsonWidgetRegistry.

Implementers
Annotations

Constructors

JsonWidgetBuilder({bool preferredSizeWidget = false, required int numSupportedChildren})
Constructs the builder by stating whether the widget being built is a PreferredSizeWidget or not.

Properties

hashCode int
The hash code for this object.
no setterinherited
numSupportedChildren int
final
preferredSizeWidget bool
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

build({required ChildWidgetBuilder? childBuilder, required BuildContext context, required JsonWidgetData data}) Widget
Builds the widget. If there are dynamic keys on the data object, and the widget is not a PreferredSizeWidget, then the returned widget will be wrapped by a stateful widget that will rebuild if any of the dynamic args change in value.
buildCustom({ChildWidgetBuilder? childBuilder, required BuildContext context, required JsonWidgetData data, Key? key}) Widget
Custom builder that subclasses must override and implement to return the actual Widget to be placed on the tree.
getChild(JsonWidgetData? data, {int index = 0}) JsonWidgetData
Returns a non-null child for widgets that must always have child widgets. This allows the widget to be built and rendered even if the child is missing.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
remove(JsonWidgetData data) → void
Called when a JSON widget is removed from the tree due to a conditional. Custom widgets may need to implement this to clean up values that may have been placed on the JsonWidgetRegistry by the widget.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

kDefaultChild JsonWidgetData
final