Skip to main content
PESDK/React Native/Guides

Native Interfaces

Learn how to use our native interfaces for customizing the PhotoEditor for React Native on iOS.

PhotoEditor SDK for React Native has some dedicated native interfaces build-in to provide better access and customization possibilities. These interfaces are accessible via the RNPhotoEditorSDK class and are available for iOS only.


Before using any of the native interfaces described below, you need to import the native module:

#import <RNPhotoEditorSDK/RNPhotoEditorSDK.h>


The RNPhotoEditorSDK.configureWithBuilder function allows you to modify the native Configuration before it gets passed to the editor. You can make all kinds of adjustments here that are not possible from the React Native configuration, e.g., change buttons or use closures of individual tools. For further information, please have a look at the dedicated native guides.

RNPhotoEditorSDK.configureWithBuilder = ^(PESDKConfigurationBuilder * _Nonnull builder) {
// Disable the color pipette for the text color selection tool
[builder configureTextColorToolController:^(PESDKTextColorToolControllerOptionsBuilder * _Nonnull options) {
NSMutableArray<PESDKColor *> *colors = [options.availableColors mutableCopy];
[colors removeObjectAtIndex:0]; // Remove first color item which is the color pipette
options.availableColors = colors;


The RNPhotoEditorSDK.willPresentPhotoEditViewController function is called right before the photo editor is presented and allows you to make adjustments directly to the editor.

RNPhotoEditorSDK.willPresentPhotoEditViewController = ^(PESDKPhotoEditViewController * _Nonnull photoEditViewController) {
NSLog(@"willPresent: %@", photoEditViewController);