ViewAnchor class
Decorates a child widget with a side View.
This widget must have a View ancestor, into which the child widget is rendered.
Typically, a View or ViewCollection widget is used in the view slot to define the content of the side view(s). Those widgets may be wrapped in other non-RenderObjectWidgets (e.g. InheritedWidgets). However, no RenderObjectWidget is allowed to appear between the ViewAnchor and the next View widget in the view slot. The widgets in the view slot have access to all InheritedWidgets above the ViewAnchor in the tree.
In technical terms, the ViewAnchor can only be used in a rendering zone of the widget tree and the view slot marks the start of a new non-rendering zone (see WidgetsBinding for a definition of these zones). Typically, it is occupied by a View widget, which will start a new rendering zone.
An example use case for this widget is a tooltip for a button. The tooltip should be able to extend beyond the bounds of the main view. For this, the tooltip can be implemented as a separate View, which is anchored to the button in the main view by wrapping that button with a ViewAnchor. In this example, the view slot is configured with the tooltip View and the child is the button widget rendered into the surrounding view.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatelessWidget
- ViewAnchor
Constructors
- ViewAnchor({Key? key, Widget? view, required Widget child})
-
Creates a ViewAnchor widget.
const
Properties
- child → Widget
-
The widget below this widget in the tree.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- view → Widget?
-
The widget that defines the view anchored to this widget.
final
Methods
-
build(
BuildContext context) → Widget -
Describes the part of the user interface represented by this widget.
override
-
createElement(
) → StatelessElement -
Creates a StatelessElement to manage this widget's location in the tree.
inherited
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited