BloomNativeView class

A cross-platform bridge widget for hosting hardware-accelerated native views (e.g. Camera Preview, MapKit/Google Maps, AR views, WebViews) declared in Bloom Modules.

On Android, hosts an AndroidViewSurface via PlatformViewsService. On iOS, hosts an UiKitView. On Web and in Flutter test environments, renders a graceful fallback widget.

Example:

BloomNativeView(
  viewType: 'BloomCameraView',
  props: {'lensFacing': 'back', 'flashMode': 'auto'},
  onEvent: (name, payload) {
    print('Event from native view: $name -> $payload');
  },
  fallback: Text('Camera not supported on this platform'),
)
Inheritance

Constructors

BloomNativeView({Key? key, required String viewType, Map<String, dynamic> props = const {}, void onEvent(String eventName, dynamic payload)?, Widget? fallback, Set<Factory<OneSequenceGestureRecognizer>>? gestureRecognizers})
Creates a BloomNativeView widget.
const

Properties

fallback → Widget?
Custom fallback widget rendered on unsupported platforms (such as Web) or during widget testing.
final
gestureRecognizers → Set<Factory<OneSequenceGestureRecognizer>>?
Custom layout gesture recognizers forwarded to the native platform view.
final
hashCode → int
The hash code for this object.
no setterinherited
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
onEvent → void Function(String eventName, dynamic payload)?
Event callback invoked when the native view emits a platform event across the method channel.
final
props → Map<String, dynamic>
Declarative properties passed to the native view during creation and updates.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
viewType → String
The registered view identifier matching the native ViewFactory name on the host platform.
final

Methods

createElement() → StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() → State<BloomNativeView>
Creates the mutable state for this widget at a given location in the tree.
override
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