4
React Native Override User Interface Style
source link: https://reactnativeexample.com/react-native-override-user-interface-style/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
react-native-override-user-interface-style
Installation
# Install & setup module $ npm install react-native-override-user-interface-style --save # --- or --- $ yarn add react-native-override-user-interface-styl # If you're developing your app using iOS, don't forget to run this command $ cd ios/ && pod install
Manual linking (only if needed)
Manually link the library on iOS
Manually link the library on android
Setup
- Add AppGroup to your
info.plist
:
<key>AppGroup</key>
<string>your.group.name</string>
- Update
AppDelegate.m
with the following additions:
#import "AppDelegate.h" #import <React/RCTBundleURLProvider.h> #import <React/RCTRootView.h> #import "RNUserInterfaceStyle.h" // <- add the header import @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // ...other code [RNUserInterfaceStyle initSystemTheme]; // <- initialization system theme return YES; } @end
android
- Update
MainActivity.java
with the following additions:
import com.humanscape.rarenote.RNUserInterfaceStyle.RNUserInterfaceStyleManager; // <- add this necessary import public class MainActivity extends ReactActivity { @Override protected void onCreate(Bundle savedInstanceState) { RNUserInterfaceStyleManager.initSystemTheme(getApplicationContext(), "your preference name"); // <- initialization system theme super.onCreate(savedInstanceState); } }
Usage
import RNUserInterfaceStyle from 'react-native-override-user-interface-style'; // or ES6+ destructured imports import { getTheme, setTheme } from 'react-native-override-user-interface-style';
Properties
- theme (String)
- default – follows system appearance
- light – light mode
- dark – dark mode
function getTheme():Promise<Theme | null>; // Gets saved theme type; function setTheme(theme:Theme): void; // Set theme type
GitHub
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK