WebViewWidget class

Displays a native WebView as a Widget.

Platform-Specific Features

This class contains an underlying implementation provided by the current platform. Once a platform implementation is imported, the examples below can be followed to use features provided by a platform's implementation.

Below is an example of setting platform-specific creation parameters for iOS and Android:

final WebViewController controller = WebViewController();

PlatformWebViewWidgetCreationParams params =
    PlatformWebViewWidgetCreationParams(
  controller: controller.platform,
  layoutDirection: TextDirection.ltr,
  gestureRecognizers: const <Factory<OneSequenceGestureRecognizer>>{},
);

if (WebViewPlatform.instance is WebKitWebViewPlatform) {
  params = WebKitWebViewWidgetCreationParams
      .fromPlatformWebViewWidgetCreationParams(
    params,
  );
} else if (WebViewPlatform.instance is AndroidWebViewPlatform) {
  params = AndroidWebViewWidgetCreationParams
      .fromPlatformWebViewWidgetCreationParams(
    params,
  );
}

final WebViewWidget webViewWidget =
    WebViewWidget.fromPlatformCreationParams(
  params: params,
);

Below is an example of accessing the platform-specific implementation for iOS and Android:

final WebViewController controller = WebViewController();

final WebViewWidget webViewWidget = WebViewWidget(controller: controller);

if (WebViewPlatform.instance is WebKitWebViewPlatform) {
  final WebKitWebViewWidget webKitWidget =
      webViewWidget.platform as WebKitWebViewWidget;
} else if (WebViewPlatform.instance is AndroidWebViewPlatform) {
  final AndroidWebViewWidget androidWidget =
      webViewWidget.platform as AndroidWebViewWidget;
}
Inheritance

Constructors

WebViewWidget({Key? key, required WebViewController controller, TextDirection layoutDirection = TextDirection.ltr, Set<Factory<OneSequenceGestureRecognizer>> gestureRecognizers = const <Factory<OneSequenceGestureRecognizer>>{}})
Constructs a WebViewWidget.
WebViewWidget.fromPlatform({Key? key, required PlatformWebViewWidget platform})
Constructs a WebViewWidget from a specific platform implementation.
WebViewWidget.fromPlatformCreationParams({Key? key, required PlatformWebViewWidgetCreationParams params})
Constructs a WebViewWidget from creation params for a specific platform.

Properties

gestureRecognizers → Set<Factory<OneSequenceGestureRecognizer>>
Specifies which gestures should be consumed by the web view.
latefinal
hashCode → int
The hash code for this object.
no setterinherited
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
layoutDirection → TextDirection
The layout direction to use for the embedded WebView.
latefinal
platform → PlatformWebViewWidget
Implementation of PlatformWebViewWidget for the current platform.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

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, int wrapWidth = 65}) → 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