mirror of
https://github.com/zhigang1992/react-native-reanimated.git
synced 2026-06-15 02:19:30 +08:00
* Add start api on iOS and struggle to do it on Android 🙌 * Why don't you wanna work 🌝 ? * Consider crucial * Well, it might be the issue * Fix memory leaks * Make it topological on Android * Make it topological on iOS as well 🎉 * Change queue to stack * Style issue * Names style * Dummy -> AlwaysEvaluative * Make it workable for stopping as well * Add { finished } callback ☑️ * Remove dummy code * Remane again * Always * Remove dummy * Fix merge issue * Add zero * Add delay * Add readme * Optimize imports * Remove unused imports: * Add tests and fix their consequences * Styles * Fix example * Add sequence, fix delays * Unused imports * Unused imports * Fix tests * Fix delay * Change seq system * Useless stuff * Useless stuff * Make it more elegant * Fix imports * Fix readme * Add setValue * Add parallel * Fix PR issues * Fix PR issues * Fix PR issues * Fix PR issues * Fix PR issues * Simplify delay * cleanup * cleanup * seqq * pr * remove delay * remove delay * remove delay * remove delay * Fix tests * Fix stop * Add comment * rename * tests wip * Fix tests * Fix tests * wish to make it work some day * Moar tests * Remove dummy tests * Moar js fixes * android fixed * ios fixes * Update rm * rev tim * rem deps * rem imports * Moarrr testzzz * line * Testss * rmn * rm empty line * rnm * spr * cmt * Tests * style * sop line * Fix tests * Fix test * fix fix fix * fix fix fix * rename * Fix tests * simplify * Add comment * Add comment * Add comment * fixx * Fix docs * enter * fix docs * fix * change logic * mock in all rolling in the tests 🙋 * Fix * Add one more test * pos * current return * add child * rename * rename * Protocol * rnm * Fix tests * Fix another test * Fix yet another test * Rename * Fix tests * `` * detach * Moar tests * Fix detaching * Update REAAlwaysNode.h
100 lines
2.6 KiB
JavaScript
100 lines
2.6 KiB
JavaScript
import React from 'react';
|
|
import { Text, View, FlatList, StyleSheet, YellowBox } from 'react-native';
|
|
import { createStackNavigator } from 'react-navigation';
|
|
import { RectButton, ScrollView } from 'react-native-gesture-handler';
|
|
|
|
import Snappable from './snappable';
|
|
import ImageViewer from './imageViewer';
|
|
import Test from './test';
|
|
import Interpolate from './src/interpolate';
|
|
import Colors from './colors';
|
|
import StartAPI from './startAPI';
|
|
import ChatHeads from './chatHeads';
|
|
|
|
YellowBox.ignoreWarnings([
|
|
'Warning: isMounted(...) is deprecated',
|
|
'Module RCTImageLoader',
|
|
]);
|
|
// refers to bug in React Navigation which should be fixed soon
|
|
// https://github.com/react-navigation/react-navigation/issues/3956
|
|
|
|
const SCREENS = {
|
|
Snappable: { screen: Snappable, title: 'Snappable' },
|
|
Test: { screen: Test, title: 'Test' },
|
|
ImageViewer: { screen: ImageViewer, title: 'Image Viewer' },
|
|
Interpolate: { screen: Interpolate, title: 'Interpolate' },
|
|
Colors: { screen: Colors, title: 'Colors' },
|
|
StartAPI: { screen: StartAPI, title: 'Start API' },
|
|
chatHeads: { screen: ChatHeads, title: 'Chat heads (iOS only)' },
|
|
};
|
|
|
|
class MainScreen extends React.Component {
|
|
static navigationOptions = {
|
|
title: '🎬 Reanimated Examples',
|
|
};
|
|
render() {
|
|
const data = Object.keys(SCREENS).map(key => ({ key }));
|
|
return (
|
|
<FlatList
|
|
style={styles.list}
|
|
data={data}
|
|
ItemSeparatorComponent={ItemSeparator}
|
|
renderItem={props => (
|
|
<MainScreenItem
|
|
{...props}
|
|
onPressItem={({ key }) => this.props.navigation.navigate(key)}
|
|
/>
|
|
)}
|
|
renderScrollComponent={props => <ScrollView {...props} />}
|
|
/>
|
|
);
|
|
}
|
|
}
|
|
|
|
const ItemSeparator = () => <View style={styles.separator} />;
|
|
|
|
class MainScreenItem extends React.Component {
|
|
_onPress = () => this.props.onPressItem(this.props.item);
|
|
render() {
|
|
const { key } = this.props.item;
|
|
return (
|
|
<RectButton style={styles.button} onPress={this._onPress}>
|
|
<Text style={styles.buttonText}>{SCREENS[key].title || key}</Text>
|
|
</RectButton>
|
|
);
|
|
}
|
|
}
|
|
|
|
const ExampleApp = createStackNavigator(
|
|
{
|
|
Main: { screen: MainScreen },
|
|
...SCREENS,
|
|
},
|
|
{
|
|
initialRouteName: 'Main',
|
|
}
|
|
);
|
|
|
|
const styles = StyleSheet.create({
|
|
list: {
|
|
backgroundColor: '#EFEFF4',
|
|
},
|
|
separator: {
|
|
height: 1,
|
|
backgroundColor: '#DBDBE0',
|
|
},
|
|
buttonText: {
|
|
backgroundColor: 'transparent',
|
|
},
|
|
button: {
|
|
flex: 1,
|
|
height: 60,
|
|
padding: 10,
|
|
flexDirection: 'row',
|
|
alignItems: 'center',
|
|
backgroundColor: '#fff',
|
|
},
|
|
});
|
|
|
|
export default ExampleApp;
|