Simple View Manager
Common base class for most of the ViewManagers. It provides support for most common properties through extending BaseViewManager. It also reduces boilerplate by specifying the type of shadow node to be ReactShadowNode and providing default, empty implementation for some of the methods of ViewManager interface.
Parameters
Inheritors
Functions
Return true if you intend to override some other native module that was registered e.g. as part of a different package (such as the core one). Trying to override without returning true from this method is considered an error and will throw an exception during initialization. By default all modules return false.
This method should return a subclass of ReactShadowNode which will be then used for measuring position and size of the view. In most of the cases this should just return an instance of ReactShadowNode
Creates a view with knowledge of props and state.
THIS PREFETCH METHOD IS EXPERIMENTAL, DO NOT USE IT FOR PRODUCTION CODE, MOST LIKELY IT WILL CHANGE OR BE REMOVED IN THE FUTURE.
Subclasses of ViewManager that expect to receive commands through dispatchViewManagerCommand should override this method returning the map between names of the commands and IDs that are then used in receiveCommand method whenever the command is dispatched for this particular ViewManager.
Returns a map of config data passed to JS that defines eligible events that can be placed on native views. This should return bubbling directly-dispatched event types and specify what names should be used to subscribe to either form (bubbling/capturing).
Returns a map of config data passed to JS that defines eligible events that can be placed on native views. This should return non-bubbling directly-dispatched event types.
Returns a map of view-specific constants that are injected to JavaScript. These constants are made accessible via UIManager..Constants.
Returns a , representing the native props of the view manager. The Map contains the names (key) and types (value) of the ViewManager's props.
This method should return Class instance that represent type of shadow node that this manager will return from createShadowNodeInstance.
This method is called after ReactApplicationContext has been created.
Allow NativeModule to clean up. Called before React Native instance is destroyed.
Subclasses can override this method to implement custom measure functions for the ViewManager
THIS MEASURE METHOD IS EXPERIMENTAL, MOST LIKELY YOU ARE LOOKING TO USE THE OTHER OVERLOAD INSTEAD: measure
Allow NativeModule to clean up. Called before {CatalystInstance#onHostDestroy}
Called when view is detached from view hierarchy and allows for some additional cleanup by the ViewManager subclass.
Lifecycle method: called when a surface is stopped. Currently only used for View Recycling cleanup. There is no corresponding startSurface lifecycle event for ViewManagers because we currently only need this for recycling cleanup. Only called in Fabric.
Subclasses may use this method to receive events/commands directly from JS through the . Good example of such a command would be scrollTo
request with coordinates for a ScrollView instance.
Subclasses may use this method to receive events/commands directly from JS through the . Good example of such a command would be scrollTo
request with coordinates for a ReactScrollView instance.
Subclasses can implement this method to receive an optional extra data enqueued from the corresponding instance of ReactShadowNode in onCollectExtraUpdates.
For the vast majority of ViewManagers, you will not need to override this. Only override this if you really know what you're doing and have a very unique use-case.
Subclasses can implement this method to receive state updates shared between all instances of this component type.