/**
* Sample React Native App
* https://github.com/facebook/react-native
*
* @format
* @flow
*/
import * as React from 'react';
import { StyleSheet, ScrollView, View, Text, StatusBar } from 'react-native';
import {
Header,
LearnMoreLinks,
Colors,
DebugInstructions,
ReloadInstructions,
} from 'react-native/Libraries/NewAppScreen';
// import { SafeAreaProvider, useSafeArea } from 'react-native-safe-area-context'; in your app.
import { SafeAreaProvider, useSafeArea } from '../src';
type ForceInsets = 'always' | 'never';
const CompatSafeAreaView = ({
forceInsets = {},
children,
}: {
forceInsets?: {
top?: ForceInsets;
right?: ForceInsets;
bottom?: ForceInsets;
left?: ForceInsets;
};
children?: React.ReactNode;
}) => {
const insets = useSafeArea();
const top = forceInsets.top === 'never' ? 0 : insets.top;
const right = forceInsets.right === 'never' ? 0 : insets.right;
const bottom = forceInsets.bottom === 'never' ? 0 : insets.bottom;
const left = forceInsets.left === 'never' ? 0 : insets.left;
return (
{children}
);
};
const App = () => {
const insets = useSafeArea();
return (
<>
Step One
Edit App.js to change this
screen and then come back to see your edits.
See Your Changes
Debug
Learn More
Read the docs to discover what to do next:
>
);
};
const styles = StyleSheet.create({
scrollView: {
backgroundColor: Colors.lighter,
},
engine: {
position: 'absolute',
right: 0,
},
body: {
backgroundColor: Colors.white,
},
sectionContainer: {
marginTop: 32,
paddingHorizontal: 24,
},
sectionTitle: {
fontSize: 24,
fontWeight: '600',
color: Colors.black,
},
sectionDescription: {
marginTop: 8,
fontSize: 18,
fontWeight: '400',
color: Colors.dark,
},
highlight: {
fontWeight: '700',
},
footer: {
color: Colors.dark,
fontSize: 12,
fontWeight: '600',
padding: 4,
paddingRight: 12,
textAlign: 'right',
},
});
export default () => (
);