diff --git a/src/App.tsx b/src/App.tsx index 2ed4b31..6087624 100755 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,5 +1,6 @@ import * as React from 'react'; -import { View, Text, Button, StyleSheet } from 'react-native'; +import { View, Text, Button, Platform, StyleSheet } from 'react-native'; +import { useScreens } from 'react-native-screens'; import Stack, { SceneProps, Route } from './components/Stack'; type CustomRoute = Route & { initial?: boolean }; @@ -73,6 +74,8 @@ export default class App extends React.Component<{}, State> { } } +useScreens(true); + const styles = StyleSheet.create({ item: { margin: 8, diff --git a/src/components/Stack.tsx b/src/components/Stack.tsx index 73c6a77..5012ac9 100755 --- a/src/components/Stack.tsx +++ b/src/components/Stack.tsx @@ -1,5 +1,6 @@ import * as React from 'react'; -import { View, StyleSheet, LayoutChangeEvent } from 'react-native'; +import { StyleSheet, LayoutChangeEvent, ViewProps } from 'react-native'; +import { Screen, ScreenContainer } from 'react-native-screens'; import Animated from 'react-native-reanimated'; import Card from './Card'; import { SlideFromRightIOS } from '../TransitionConfigs/TransitionPresets'; @@ -33,6 +34,15 @@ type State = { layout: Layout; }; +const { cond, eq } = Animated; + +// @ts-ignore +const AnimatedScreen = Animated.createAnimatedComponent( + Screen +) as React.ComponentType< + ViewProps & { active: number | Animated.Node } +>; + export default class Stack extends React.Component< Props, State @@ -89,7 +99,7 @@ export default class Stack extends React.Component< }))} onGoBack={onGoBack} /> - extends React.Component< : undefined; return ( - extends React.Component< index, })} - + ); })} - + ); }