react-native/Examples/UIExplorer
Hedger Wang 67002e8ae3 Clean up NavigationStateUtils
Summary:
== API Breaking Change ==

- Add unit tests to ensure that NavigationStateUtils does the right thing.
- Remove the logics that lets NavigationStateUtils accept empty value as input
  and return a new state.
- Remove the method `NavigationStateUtils.getParent`, `NavigationStateUtils.set`. These methods are rarely used and they can be replaced by other methods.

Reviewed By: ericvicenti

Differential Revision: D3374934

fbshipit-source-id: 0fdf538d014d7c5b4aa1f15a0ee8db9dc91e33cd
2016-06-08 15:13:31 -07:00
..
AnimatedGratuitousApp remove paddingTop in AnimatedGratuitousApp 2016-05-25 00:13:31 -07:00
NavigationExperimental Kill NavigationReducers 2016-06-08 11:43:29 -07:00
Navigator Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
Thumbnails Fixed zero-size images 2015-11-18 15:23:30 -08:00
UIExplorer Refactored subview management 2016-06-07 00:14:39 -07:00
UIExplorer.xcodeproj Reverted commit D3401811 2016-06-07 23:43:30 -07:00
UIExplorerIntegrationTests Fixed unit tests 2016-06-07 12:43:49 -07:00
UIExplorerUnitTests Fixed unit tests 2016-06-07 12:43:49 -07:00
android/app Allow building UIExplorer with Buck 2016-04-12 13:05:24 -07:00
AccessibilityAndroidExample.android.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
AccessibilityIOSExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
ActionSheetIOSExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
ActivityIndicatorExample.js Cross platform ActivityIndicator 2016-05-26 13:58:17 -07:00
AdSupportIOSExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
AlertExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
AlertIOSExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
AnimatedExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
AppStateExample.js react-native-github: turn on strict type args in Flow, codemod stragglers 2016-06-03 02:43:57 -07:00
AssetScaledImageExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
AsyncStorageExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
BorderExample.js Fix 'Can't find variable: React' 2016-04-24 07:13:29 -07:00
BoxShadowExample.js Fix 'React not found' issue 2016-04-24 16:27:25 -07:00
CameraRollExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
CameraRollView.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
ClipboardExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
DatePickerAndroidExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
DatePickerIOSExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
ExampleTypes.js Update FBSource to use Flow 0.22 2016-03-08 12:39:29 -08:00
GeolocationExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
ImageCapInsetsExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
ImageEditingExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
ImageExample.js Add Image#getSize for Android 2016-05-20 18:43:38 -07:00
KeyboardAvoidingViewExample.js Open sourced KeyboardAvoidingView 2016-06-07 07:43:49 -07:00
LayoutAnimationExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
LayoutEventsExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
LayoutExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
LinkingExample.js Fix Linking Example 2016-05-20 13:28:19 -07:00
ListViewExample.js clarify highlightRow usage with UIExplorer example 2016-05-05 03:43:47 -07:00
ListViewGridLayoutExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
ListViewPagingExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
MapViewExample.js Fixed MapView's draggable annotation 2016-06-07 07:28:27 -07:00
ModalExample.js Modal Animation Types 2016-04-28 16:00:32 -07:00
NavigatorIOSColorsExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
NavigatorIOSExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
NetInfoExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
PanResponderExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
PickerExample.js Display platform-specific examples 2016-05-05 09:10:26 -07:00
PickerIOSExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
PointerEventsExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
ProgressBarAndroidExample.android.js Cross platform ActivityIndicator 2016-05-26 13:58:17 -07:00
ProgressViewIOSExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
PushNotificationIOSExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
RCTRootViewIOSExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
README.md Allow building UIExplorer with Buck 2016-04-12 13:05:24 -07:00
RefreshControlExample.js Allow to set refresh control title color 2016-04-16 15:15:25 -07:00
RootViewSizeFlexibilityExampleApp.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
ScrollViewExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
ScrollViewSimpleExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
SegmentedControlIOSExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
SetPropertiesExampleApp.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
SliderExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
SliderIOSExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
SnapshotExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
StatusBarExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
SwitchExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
TabBarIOSExample.js Add renderAsOriginal to selectedIcon 2016-05-24 01:58:23 -07:00
TextExample.android.js Added support for textDecorationLine style prop on Android 2016-04-12 03:37:34 -07:00
TextExample.ios.js iOS: Enable views to be nested within <Text> 2016-05-31 10:28:25 -07:00
TextInputExample.android.js Implement returnKeyType/returnKeyLabel on Android 2016-05-05 10:22:19 -07:00
TextInputExample.ios.js Replaced old password prop with secureTextEntry 2016-06-01 06:58:24 -07:00
TimePickerAndroidExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
TimerExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
ToastAndroidExample.android.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
ToolbarAndroidExample.android.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
TouchableExample.js Typo fix in Touchable example 2016-06-03 17:58:23 -07:00
TransformExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
TransparentHitTestExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
UIExplorerActions.js Kill NavigationExperimental Containers 2016-05-05 16:52:19 -07:00
UIExplorerApp.android.js Add support for delete animation in LayoutAnimation on Android 2016-05-26 05:28:26 -07:00
UIExplorerApp.ios.js Handle old navigation state safely. 2016-05-27 15:43:23 -07:00
UIExplorerBlock.js Fix warnings in UIExplorer example pages 2016-04-07 21:14:29 -07:00
UIExplorerButton.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
UIExplorerExampleList.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
UIExplorerList.android.js Open sourced KeyboardAvoidingView 2016-06-07 07:43:49 -07:00
UIExplorerList.ios.js Reverted commit D3401811 2016-06-07 23:43:30 -07:00
UIExplorerNavigationReducer.js Clean up NavigationStateUtils 2016-06-08 15:13:31 -07:00
UIExplorerPage.js Fix warnings in UIExplorer example pages 2016-04-07 21:14:29 -07:00
UIExplorerStateTitleMap.js D3321403 [NavigationExperimental][CleanUp]: Rename `scene.navigationState` to `scene.route`. 2016-05-20 18:13:30 -07:00
UIExplorerTitle.js Fix warnings in UIExplorer example pages 2016-04-07 21:14:29 -07:00
URIActionMap.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
VibrationExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
VibrationIOSExample.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
ViewExample.js Implement CSS z-index for iOS 2016-06-07 07:43:49 -07:00
ViewPagerAndroidExample.android.js Ability to disable/lock the android ViewPager scroll from props 2016-05-11 16:51:17 -07:00
WebSocketExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
WebViewExample.js explicit type args in react-native-github 2016-05-24 18:28:26 -07:00
XHRExample.android.js add progressListener for android when using FormData to upload files 2016-06-04 08:43:21 -07:00
XHRExample.ios.js add progressListener for android when using FormData to upload files 2016-06-04 08:43:21 -07:00
XHRExampleCookies.js Add WebView integration example to cookies example 2016-04-25 09:44:26 -07:00
XHRExampleFetch.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
XHRExampleHeaders.js Fix up this pattern var React = require('react-native'); 2016-04-08 20:37:22 -07:00
XHRExampleOnTimeOut.js Add support for ontimeout and onerror handler when using XMLHttpRequest for Android and iOS 2016-04-15 05:17:21 -07:00
bunny.png add remote image support to toolbar 2015-09-30 09:21:27 -07:00
createExamplePage.js Fix warnings in UIExplorer example pages 2016-04-07 21:14:29 -07:00
flux@3x.png Managed assets support for RCTConvert 2015-09-29 09:21:39 -07:00
hawk.png add remote image support to toolbar 2015-09-30 09:21:27 -07:00
helloworld.html Support non-image assets in packager 2016-02-03 17:30:39 -08:00
relay@3x.png Add renderAsOriginal to selectedIcon 2016-05-24 01:58:23 -07:00
slider-left.png Add option for both min/max track image. 2015-12-21 10:30:39 -08:00
slider-left@2x.png Add option for both min/max track image. 2015-12-21 10:30:39 -08:00
slider-right.png Add option for both min/max track image. 2015-12-21 10:30:39 -08:00
slider-right@2x.png Add option for both min/max track image. 2015-12-21 10:30:39 -08:00
slider.png Add option for both min/max track image. 2015-12-21 10:30:39 -08:00
slider@2x.png Add option for both min/max track image. 2015-12-21 10:30:39 -08:00
uie_comment_highlighted@2x.png Update Image docs and examples to the new asset system 2016-01-27 13:47:45 -08:00
uie_comment_normal@2x.png Update Image docs and examples to the new asset system 2016-01-27 13:47:45 -08:00
uie_thumb_big.png added method to set thumb image 2015-11-24 16:10:04 -08:00
uie_thumb_normal@2x.png Update Image docs and examples to the new asset system 2016-01-27 13:47:45 -08:00
uie_thumb_selected@2x.png Update Image docs and examples to the new asset system 2016-01-27 13:47:45 -08:00
websocket_test_server.js Add support for sending binary data in websockets 2016-04-20 08:53:25 -07:00

README.md

UIExplorer

The UIExplorer is a sample app that showcases React Native views and modules.

Running this app

Before running the app, make sure you ran:

git clone https://github.com/facebook/react-native.git
cd react-native
npm install

Running on iOS

Mac OS and Xcode are required.

  • Open Examples/UIExplorer/UIExplorer.xcodeproj in Xcode
  • Hit the Run button

See Running on device if you want to use a physical device.

Running on Android

You'll need to have all the prerequisites (SDK, NDK) for Building React Native installed.

Start an Android emulator (Genymotion is recommended).

cd react-native
./gradlew :Examples:UIExplorer:android:app:installDebug
./packager/packager.sh

Note: Building for the first time can take a while.

Open the UIExplorer app in your emulator.

See Running on Device in case you want to use a physical device.

Running with Buck

Follow the same setup as running with gradle.

Install Buck from here.

Run the following commands from the react-native folder:

./gradlew :ReactAndroid:packageReactNdkLibsForBuck
buck fetch uiexplorer
buck install -r uiexplorer
./packager/packager.sh

Note: The native libs are still built using gradle. Full build with buck is coming soon(tm).

Built from source

Building the app on both iOS and Android means building the React Native framework from source. This way you're running the latest native and JS code the way you see it in your clone of the github repo.

This is different from apps created using react-native init which have a dependency on a specific version of React Native JS and native code, declared in a package.json file (and build.gradle for Android apps).