public interface PlatformView
| Modifier and Type | Method and Description |
|---|---|
void |
dispose()
Dispose this platform view.
|
View |
getView()
Returns the Android view to be embedded in the Flutter hierarchy.
|
default void |
onFlutterViewAttached(View flutterView)
Called by the
FlutterEngine that owns this PlatformView when the Android View responsible for rendering a Flutter UI is associated with the FlutterEngine. |
default void |
onFlutterViewDetached()
Called by the
FlutterEngine that owns this PlatformView when the Android View responsible for rendering a Flutter UI is detached and disassociated from the FlutterEngine. |
default void |
onInputConnectionLocked()
Callback fired when the platform's input connection is locked, or should be used.
|
default void |
onInputConnectionUnlocked()
Callback fired when the platform input connection has been unlocked.
|
View getView()
default void onFlutterViewAttached(@NonNull
View flutterView)
FlutterEngine that owns this PlatformView when the Android View responsible for rendering a Flutter UI is associated with the FlutterEngine.
This means that our associated FlutterEngine can now render a UI and interact with
the user.
Some platform views may have unusual dependencies on the View that renders Flutter
UIs, such as unique keyboard interactions. That View is provided here for those
purposes. Use of this View should be avoided if it is not absolutely necessary, because
depending on this View will tend to make platform view code more brittle to future
changes.
default void onFlutterViewDetached()
FlutterEngine that owns this PlatformView when the Android View responsible for rendering a Flutter UI is detached and disassociated from the FlutterEngine.
This means that our associated FlutterEngine no longer has a rendering surface, or a
user interaction surface of any kind.
This platform view must release any references related to the Android View that was
provided in onFlutterViewAttached(View).
void dispose()
The PlatformView object is unusable after this method is called.
Plugins implementing PlatformView must clear all references to the View object and
the PlatformView after this method is called. Failing to do so will result in a memory leak.
References related to the Android View attached in onFlutterViewAttached(View) must be released in dispose() to avoid memory leaks.
default void onInputConnectionLocked()
TextInputPlugin#lockPlatformViewInputConnection.
This hook only exists for rare cases where the plugin relies on the state of the input connection. This probably doesn't need to be implemented.
default void onInputConnectionUnlocked()
TextInputPlugin#lockPlatformViewInputConnection.
This hook only exists for rare cases where the plugin relies on the state of the input connection. This probably doesn't need to be implemented.