/** * The examples provided by Facebook are for non-commercial testing and * evaluation purposes only. * * Facebook reserves all rights not expressly granted. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL * FACEBOOK BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * @providesModule MoviesApp * @flow */ 'use strict'; var React = require('react'); var ReactNative = require('react-native'); var { AppRegistry, BackAndroid, Navigator, StyleSheet, ToolbarAndroid, View, } = ReactNative; var MovieScreen = require('./MovieScreen'); var SearchScreen = require('./SearchScreen'); var _navigator; BackAndroid.addEventListener('hardwareBackPress', () => { if (_navigator && _navigator.getCurrentRoutes().length > 1) { _navigator.pop(); return true; } return false; }); var RouteMapper = function(route, navigationOperations, onComponentRef) { _navigator = navigationOperations; if (route.name === 'search') { return ( ); } else if (route.name === 'movie') { return ( ); } }; class MoviesApp extends React.Component { render() { var initialRoute = {name: 'search'}; return ( Navigator.SceneConfigs.FadeAndroid} renderScene={RouteMapper} /> ); } } var styles = StyleSheet.create({ container: { flex: 1, backgroundColor: 'white', }, toolbar: { backgroundColor: '#a9a9a9', height: 56, }, }); AppRegistry.registerComponent('MoviesApp', () => MoviesApp); module.exports = MoviesApp;