SingleChildScrollView class
A scrollable container for a single child widget.
Unlike Viewport which takes a pre-rendered String, this widget keeps its child in the element tree so that stateful widgets work correctly. The child is laid out with unconstrained height, and only the visible portion (determined by the scroll offset) is painted.
Provide a ScrollController to share scroll state with a Scrollbar.
Scrollbar(
controller: ctrl,
child: SingleChildScrollView(
controller: ctrl,
child: Column(children: [...]),
),
)
- Inheritance
-
- Object
- Widget
- StatefulWidget
- SingleChildScrollView
Constructors
- SingleChildScrollView({required Widget child, EdgeInsets? padding, ScrollController? controller, bool handleKeys = true, int mouseWheelDelta = 3, bool enableSelection = false, Key? key})
Properties
- child → Widget
-
The widget to render inside the scrollable viewport.
final
-
children
→ List<
Widget> -
Child widgets that receive forwarded messages.
no setterinherited
- controller → ScrollController?
-
Optional controller for programmatic scrolling.
final
- debugRenderObjectPassthrough → bool
-
Whether this widget is intentionally transparent to render-object layouts.
no setterinherited
- enableSelection → bool
-
Whether in-app text selection is enabled.
final
- focusable → bool
-
Whether this widget can receive keyboard focus.
no setterinherited
- handleKeys → bool
-
Whether to handle keyboard scrolling (arrow keys/PageUp/PageDown).
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- id → String
-
Unique identifier for this widget.
no setterinherited
- key → Key?
-
Key for preserving widget identity.
finalinherited
- mouseWheelDelta → int
-
Number of rows to scroll per mouse wheel tick.
final
- padding → EdgeInsets?
-
Optional padding to apply around child.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- theme → Theme
-
Access the current theme.
no setterinherited
Methods
-
buildCachedView<
T> (T builder(), Object? cacheKey) → T -
Returns a cached view if the cache key matches.
inherited
-
createState(
) → State< StatefulWidget> -
Creates the mutable State associated with this widget.
override
-
handleInit(
) → Cmd? -
Override this instead of init for widget-specific initialization.
inherited
-
handleIntercept(
Msg msg) → (Widget, Cmd?) -
Override this to handle messages before they reach children.
inherited
-
handleUpdate(
Msg msg) → (Widget, Cmd?) -
Override this to handle messages specific to this widget.
inherited
-
init(
) → Cmd? -
Called once when the widget is first mounted.
inherited
-
invalidateCachedView(
) → void -
Clears any cached view for this widget.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
update(
Msg msg) → (Model, Cmd?) -
Handles messages by forwarding to children then calling handleUpdate.
inherited
-
view(
) → Object -
Renders the widget to a string or View.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited