├── 01-01-02
├── index.html
├── package.json
├── src
│ ├── bundle.js
│ └── js
│ │ ├── components
│ │ └── bodyindex.js
│ │ └── index.js
└── webpack.config.js
├── 02-02-02
└── HelloReact
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── helloreact
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── HelloReact-tvOS
│ │ └── Info.plist
│ ├── HelloReact-tvOSTests
│ │ └── Info.plist
│ ├── HelloReact.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── HelloReact-tvOS.xcscheme
│ │ │ └── HelloReact.xcscheme
│ ├── HelloReact
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── HelloReactTests
│ │ ├── HelloReactTests.m
│ │ └── Info.plist
│ ├── package.json
│ └── yarn.lock
├── 03-04
├── child-2-parent.js
└── parent-2-child.js
├── 03-06
└── lifecycle.js
├── 04-03
├── align-content.html
├── align-items.html
├── align-self.html
├── flex-basis.html
├── flex-direction.html
├── flex-grow.html
├── flex-shrink.html
├── flex-wrap.html
├── justify-content.html
├── order.html
└── website.css
├── 06-02
└── ViewComponent
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── viewcomponent
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app-2.js
│ ├── app-3.js
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── ViewComponent-tvOS
│ │ └── Info.plist
│ ├── ViewComponent-tvOSTests
│ │ └── Info.plist
│ ├── ViewComponent.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── ViewComponent-tvOS.xcscheme
│ │ │ └── ViewComponent.xcscheme
│ ├── ViewComponent
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── ViewComponentTests
│ │ ├── Info.plist
│ │ └── ViewComponentTests.m
│ ├── package.json
│ └── yarn.lock
├── 06-03
├── TabBarComponent
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ │ ├── app
│ │ │ ├── BUCK
│ │ │ ├── build.gradle
│ │ │ ├── proguard-rules.pro
│ │ │ └── src
│ │ │ │ └── main
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── tabbarcomponent
│ │ │ │ │ ├── MainActivity.java
│ │ │ │ │ └── MainApplication.java
│ │ │ │ └── res
│ │ │ │ ├── mipmap-hdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-mdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ └── values
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ ├── build.gradle
│ │ ├── gradle.properties
│ │ ├── gradle
│ │ │ └── wrapper
│ │ │ │ ├── gradle-wrapper.jar
│ │ │ │ └── gradle-wrapper.properties
│ │ ├── gradlew
│ │ ├── gradlew.bat
│ │ ├── keystores
│ │ │ ├── BUCK
│ │ │ └── debug.keystore.properties
│ │ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ │ ├── TabBarComponent-tvOS
│ │ │ └── Info.plist
│ │ ├── TabBarComponent-tvOSTests
│ │ │ └── Info.plist
│ │ ├── TabBarComponent.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ ├── TabBarComponent-tvOS.xcscheme
│ │ │ │ └── TabBarComponent.xcscheme
│ │ ├── TabBarComponent
│ │ │ ├── AppDelegate.h
│ │ │ ├── AppDelegate.m
│ │ │ ├── Base.lproj
│ │ │ │ └── LaunchScreen.xib
│ │ │ ├── Images.xcassets
│ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ └── Contents.json
│ │ │ │ └── Contents.json
│ │ │ ├── Info.plist
│ │ │ └── main.m
│ │ └── TabBarComponentTests
│ │ │ ├── Info.plist
│ │ │ └── TabBarComponentTests.m
│ ├── package.json
│ └── yarn.lock
└── TabBarComponentAndroid
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── tabbarcomponentandroid
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── flux.png
│ ├── index.js
│ ├── ios
│ ├── TabBarComponentAndroid-tvOS
│ │ └── Info.plist
│ ├── TabBarComponentAndroid-tvOSTests
│ │ └── Info.plist
│ ├── TabBarComponentAndroid.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── TabBarComponentAndroid-tvOS.xcscheme
│ │ │ └── TabBarComponentAndroid.xcscheme
│ ├── TabBarComponentAndroid
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── TabBarComponentAndroidTests
│ │ ├── Info.plist
│ │ └── TabBarComponentAndroidTests.m
│ ├── package.json
│ ├── relay.png
│ └── yarn.lock
├── 06-04
├── NavigatorIOSComponent
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ │ ├── app
│ │ │ ├── BUCK
│ │ │ ├── build.gradle
│ │ │ ├── proguard-rules.pro
│ │ │ └── src
│ │ │ │ └── main
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── navigatorioscomponent
│ │ │ │ │ ├── MainActivity.java
│ │ │ │ │ └── MainApplication.java
│ │ │ │ └── res
│ │ │ │ ├── mipmap-hdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-mdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ └── values
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ ├── build.gradle
│ │ ├── gradle.properties
│ │ ├── gradle
│ │ │ └── wrapper
│ │ │ │ ├── gradle-wrapper.jar
│ │ │ │ └── gradle-wrapper.properties
│ │ ├── gradlew
│ │ ├── gradlew.bat
│ │ ├── keystores
│ │ │ ├── BUCK
│ │ │ └── debug.keystore.properties
│ │ └── settings.gradle
│ ├── app.json
│ ├── details.js
│ ├── index.js
│ ├── ios
│ │ ├── NavigatorIOSComponent-tvOS
│ │ │ └── Info.plist
│ │ ├── NavigatorIOSComponent-tvOSTests
│ │ │ └── Info.plist
│ │ ├── NavigatorIOSComponent.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ ├── NavigatorIOSComponent-tvOS.xcscheme
│ │ │ │ └── NavigatorIOSComponent.xcscheme
│ │ ├── NavigatorIOSComponent
│ │ │ ├── AppDelegate.h
│ │ │ ├── AppDelegate.m
│ │ │ ├── Base.lproj
│ │ │ │ └── LaunchScreen.xib
│ │ │ ├── Images.xcassets
│ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ └── Contents.json
│ │ │ │ └── Contents.json
│ │ │ ├── Info.plist
│ │ │ └── main.m
│ │ └── NavigatorIOSComponentTests
│ │ │ ├── Info.plist
│ │ │ └── NavigatorIOSComponentTests.m
│ ├── main.js
│ ├── package.json
│ ├── props.json
│ └── yarn.lock
└── ReactNativeNavigationAndroid
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── README.md
│ ├── android
│ ├── app
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── ic_launcher-web.png
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ └── strings.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
│ ├── img
│ ├── beach.jpg
│ ├── colors.png
│ ├── delete@1x.png
│ ├── delete@2x.png
│ ├── edit@1x.png
│ ├── edit@2x.png
│ ├── gyro_header.jpg
│ ├── heroes
│ │ ├── bouny_hunter.png
│ │ ├── earthspirit.png
│ │ ├── oracle.png
│ │ ├── skywrath_mage.png
│ │ └── templar_assasin.png
│ ├── list@1.5x.android.png
│ ├── list@1x.png
│ ├── list@2x.android.png
│ ├── list@3x.android.png
│ ├── list@4x.android.png
│ ├── masonry
│ │ ├── 158xD4xbeh.jpeg
│ │ ├── 37r6Cqp1B8.jpeg
│ │ ├── 5Gi8kova3k.jpeg
│ │ ├── 61mpAVRV73.jpeg
│ │ ├── A4g0lZ33Z8.jpeg
│ │ ├── AdGXmD1CH6.jpeg
│ │ ├── Cfw87359UT.jpeg
│ │ ├── N30E32431C.jpeg
│ │ ├── a848dHxA4e.jpeg
│ │ ├── j51Pva1P8L.jpeg
│ │ ├── kVN0FryOZk.jpeg
│ │ ├── pqgylg80SD.jpeg
│ │ ├── rVOcz7rd0z.jpeg
│ │ ├── ri90ueind7.jpeg
│ │ ├── v8KLi2f0Tr.jpeg
│ │ └── xU42hx19BB.jpeg
│ ├── navicon_add@2x.android.png
│ ├── navicon_add@2x.ios.png
│ ├── navicon_add@3x.android.png
│ ├── navicon_edit@2x.png
│ ├── navicon_menu@2x.png
│ ├── one@1.5x.android.png
│ ├── one@1x.android.png
│ ├── one@2x.ios.png
│ ├── one@3x.android.png
│ ├── one@4x.android.png
│ ├── one_selected@2x.png
│ ├── swap@1x.png
│ ├── swap@2x.png
│ ├── three@2x.png
│ ├── three_selected@2x.png
│ ├── transform@1x.png
│ ├── transform@2x.png
│ ├── two@2x.png
│ └── two_selected@2x.png
│ ├── index.js
│ ├── ios
│ ├── example.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── example.xcscheme
│ │ │ └── example_release.xcscheme
│ ├── example
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── exampleTests
│ │ ├── Info.plist
│ │ └── exampleTests.m
│ ├── package.json
│ ├── scripts
│ └── postinstall.js
│ ├── src
│ ├── app.js
│ ├── components
│ │ └── Row.js
│ └── screens
│ │ ├── Actions.js
│ │ ├── NavigationTypes.js
│ │ ├── Transitions.js
│ │ ├── index.js
│ │ ├── transitions
│ │ ├── CollapsingHeader.js
│ │ ├── SharedElementTransitions.js
│ │ └── sharedElementTransitions
│ │ │ ├── Cards
│ │ │ ├── Cards.js
│ │ │ └── Info.js
│ │ │ ├── Masonry
│ │ │ ├── Item.js
│ │ │ ├── Masonry.js
│ │ │ └── images.js
│ │ │ └── Profiles
│ │ │ ├── Profiles.js
│ │ │ └── data.js
│ │ └── types
│ │ ├── CustomButtonScreen.js
│ │ ├── CustomTopBar.js
│ │ ├── CustomTopBarScreen.js
│ │ ├── Drawer.js
│ │ ├── DummyScreen.js
│ │ ├── LightBox.js
│ │ ├── ListScreen.js
│ │ ├── Modal.js
│ │ ├── Notification.js
│ │ ├── Push.js
│ │ ├── TopTabs.js
│ │ └── tabs
│ │ ├── TabOne.js
│ │ └── TabTwo.js
│ └── test
│ └── e2e
│ ├── init.js
│ ├── mocha.opts
│ └── sanity.test.js
├── 06-05
└── ImageComponent
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── imagecomponent
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── ImageComponent-tvOS
│ │ └── Info.plist
│ ├── ImageComponent-tvOSTests
│ │ └── Info.plist
│ ├── ImageComponent.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── ImageComponent-tvOS.xcscheme
│ │ │ └── ImageComponent.xcscheme
│ ├── ImageComponent
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── ImageComponentTests
│ │ ├── ImageComponentTests.m
│ │ └── Info.plist
│ ├── package.json
│ ├── react-native.png
│ └── yarn.lock
├── 06-06
└── TextComponent
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App-sample.js
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── textcomponent
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app-nested.js
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── TextComponent-tvOS
│ │ └── Info.plist
│ ├── TextComponent-tvOSTests
│ │ └── Info.plist
│ ├── TextComponent.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── TextComponent-tvOS.xcscheme
│ │ │ └── TextComponent.xcscheme
│ ├── TextComponent
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── TextComponentTests
│ │ ├── Info.plist
│ │ └── TextComponentTests.m
│ ├── package.json
│ └── yarn.lock
├── 06-07
└── TextInputComponent
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── README.md
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── screens
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── index.android.js
│ ├── index.ios.js
│ ├── ios
│ ├── screens.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ └── screens.xcscheme
│ ├── screens
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── screensTests
│ │ ├── Info.plist
│ │ └── screensTests.m
│ ├── jsconfig.json
│ ├── package.json
│ ├── screens
│ ├── login
│ │ ├── index.js
│ │ ├── login1_bg.png
│ │ ├── login1_lock.png
│ │ ├── login1_mark.png
│ │ └── login1_person.png
│ └── signup
│ │ ├── back.png
│ │ ├── index.js
│ │ ├── signup_bg.png
│ │ ├── signup_birthday.png
│ │ ├── signup_email.png
│ │ ├── signup_lock.png
│ │ └── signup_person.png
│ ├── signup_bg.png
│ └── yarn.lock
├── 06-08
└── TouchComponent
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── README.md
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── screens
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── index.android.js
│ ├── index.ios.js
│ ├── ios
│ ├── screens.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ └── screens.xcscheme
│ ├── screens
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── screensTests
│ │ ├── Info.plist
│ │ └── screensTests.m
│ ├── jsconfig.json
│ ├── package.json
│ ├── screens
│ ├── login
│ │ ├── index.js
│ │ ├── login1_bg.png
│ │ ├── login1_lock.png
│ │ ├── login1_mark.png
│ │ └── login1_person.png
│ └── signup
│ │ ├── back.png
│ │ ├── index.js
│ │ ├── signup_bg.png
│ │ ├── signup_birthday.png
│ │ ├── signup_email.png
│ │ ├── signup_lock.png
│ │ └── signup_person.png
│ ├── signup_bg.png
│ └── yarn.lock
├── 06-09
└── WebViewComponent
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── webviewcomponent
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── WebViewComponent-tvOS
│ │ └── Info.plist
│ ├── WebViewComponent-tvOSTests
│ │ └── Info.plist
│ ├── WebViewComponent.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── WebViewComponent-tvOS.xcscheme
│ │ │ └── WebViewComponent.xcscheme
│ ├── WebViewComponent
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── WebViewComponentTests
│ │ ├── Info.plist
│ │ └── WebViewComponentTests.m
│ ├── package.json
│ └── yarn.lock
├── 06-10
└── ScrollViewDemo
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── ScrollViewComponent.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── scrollviewdemo
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── ScrollViewDemo-tvOS
│ │ └── Info.plist
│ ├── ScrollViewDemo-tvOSTests
│ │ └── Info.plist
│ ├── ScrollViewDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── ScrollViewDemo-tvOS.xcscheme
│ │ │ └── ScrollViewDemo.xcscheme
│ ├── ScrollViewDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── ScrollViewDemoTests
│ │ ├── Info.plist
│ │ └── ScrollViewDemoTests.m
│ ├── package.json
│ └── yarn.lock
├── 07-02
└── Alert
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── README.md
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── textcomponent
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── index.android.js
│ ├── index.ios.js
│ ├── ios
│ ├── screens.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ └── screens.xcscheme
│ ├── screens
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── screensTests
│ │ ├── Info.plist
│ │ └── screensTests.m
│ ├── jsconfig.json
│ ├── other.js
│ ├── package.json
│ ├── screens
│ ├── login
│ │ ├── index.js
│ │ ├── login1_bg.png
│ │ ├── login1_lock.png
│ │ ├── login1_mark.png
│ │ └── login1_person.png
│ └── signup
│ │ ├── back.png
│ │ ├── index.js
│ │ ├── signup_bg.png
│ │ ├── signup_birthday.png
│ │ ├── signup_email.png
│ │ ├── signup_lock.png
│ │ └── signup_person.png
│ ├── signup_bg.png
│ └── yarn.lock
├── 07-03
└── AppStateDemo
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── appstatedemo
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── AppStateDemo-tvOS
│ │ └── Info.plist
│ ├── AppStateDemo-tvOSTests
│ │ └── Info.plist
│ ├── AppStateDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── AppStateDemo-tvOS.xcscheme
│ │ │ └── AppStateDemo.xcscheme
│ ├── AppStateDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── AppStateDemoTests
│ │ ├── AppStateDemoTests.m
│ │ └── Info.plist
│ ├── package.json
│ └── yarn.lock
├── 07-04
└── AsyncStorageDemo
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── README.md
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── textcomponent
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── index.android.js
│ ├── index.ios.js
│ ├── ios
│ ├── screens.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ └── screens.xcscheme
│ ├── screens
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── screensTests
│ │ ├── Info.plist
│ │ └── screensTests.m
│ ├── jsconfig.json
│ ├── other.js
│ ├── package.json
│ ├── screens
│ ├── login
│ │ ├── index.js
│ │ ├── login1_bg.png
│ │ ├── login1_lock.png
│ │ ├── login1_mark.png
│ │ └── login1_person.png
│ └── signup
│ │ ├── back.png
│ │ ├── index.js
│ │ ├── signup_bg.png
│ │ ├── signup_birthday.png
│ │ ├── signup_email.png
│ │ ├── signup_lock.png
│ │ └── signup_person.png
│ ├── signup_bg.png
│ └── yarn.lock
├── 07-05
└── CameraDemo
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── camerademo
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── CameraDemo-tvOS
│ │ └── Info.plist
│ ├── CameraDemo-tvOSTests
│ │ └── Info.plist
│ ├── CameraDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── CameraDemo-tvOS.xcscheme
│ │ │ └── CameraDemo.xcscheme
│ ├── CameraDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── CameraDemoTests
│ │ ├── CameraDemoTests.m
│ │ └── Info.plist
│ ├── package.json
│ └── yarn.lock
├── 07-06
└── GeolocationDemo
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── geolocationdemo
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── getCurrentPosition.js
│ ├── index.js
│ ├── ios
│ ├── GeolocationDemo-tvOS
│ │ └── Info.plist
│ ├── GeolocationDemo-tvOSTests
│ │ └── Info.plist
│ ├── GeolocationDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── GeolocationDemo-tvOS.xcscheme
│ │ │ └── GeolocationDemo.xcscheme
│ ├── GeolocationDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── GeolocationDemoTests
│ │ ├── GeolocationDemoTests.m
│ │ └── Info.plist
│ ├── package.json
│ ├── watchPosition.js
│ └── yarn.lock
├── 07-07
└── ConnectionInfoCurrent.js
├── 08-03
└── ListDemo
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── assets
│ │ │ ├── index.android.bundle
│ │ │ └── index.android.bundle.meta
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── tabbarcomponentandroid
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── drawable-mdpi
│ │ │ ├── flux.png
│ │ │ └── relay.png
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── flux.png
│ ├── home.js
│ ├── index.js
│ ├── ios
│ ├── TabBarComponentAndroid-tvOS
│ │ └── Info.plist
│ ├── TabBarComponentAndroid-tvOSTests
│ │ └── Info.plist
│ ├── TabBarComponentAndroid.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── TabBarComponentAndroid-tvOS.xcscheme
│ │ │ └── TabBarComponentAndroid.xcscheme
│ ├── TabBarComponentAndroid
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── TabBarComponentAndroidTests
│ │ ├── Info.plist
│ │ └── TabBarComponentAndroidTests.m
│ ├── package.json
│ ├── relay.png
│ └── yarn.lock
├── 09-05
└── PieChart.js
├── 11-02
└── NativeiOSModule
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── nativeiosmodule
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── MyModule.h
│ ├── MyModule.m
│ ├── NativeiOSModule-tvOS
│ │ └── Info.plist
│ ├── NativeiOSModule-tvOSTests
│ │ └── Info.plist
│ ├── NativeiOSModule.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── NativeiOSModule-tvOS.xcscheme
│ │ │ └── NativeiOSModule.xcscheme
│ ├── NativeiOSModule
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── NativeiOSModuleTests
│ │ ├── Info.plist
│ │ └── NativeiOSModuleTests.m
│ ├── package.json
│ └── yarn.lock
├── 11-03
└── GetSystemVolume
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── getsystemvolume
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── GetSystemVolume-tvOS
│ │ └── Info.plist
│ ├── GetSystemVolume-tvOSTests
│ │ └── Info.plist
│ ├── GetSystemVolume.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── GetSystemVolume-tvOS.xcscheme
│ │ │ └── GetSystemVolume.xcscheme
│ ├── GetSystemVolume
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ ├── GetSystemVolumeTests
│ │ ├── GetSystemVolumeTests.m
│ │ └── Info.plist
│ ├── OutputVolume.h
│ └── OutputVolume.m
│ ├── package.json
│ └── yarn.lock
├── 12-02
└── NativeAndroidModule
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── MyAndroidModule.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── nativeandroidmodule
│ │ │ │ ├── MainActivity.java
│ │ │ │ ├── MainApplication.java
│ │ │ │ ├── MyModule.java
│ │ │ │ └── MyModulePackage.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── NativeAndroidModule-tvOS
│ │ └── Info.plist
│ ├── NativeAndroidModule-tvOSTests
│ │ └── Info.plist
│ ├── NativeAndroidModule.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── NativeAndroidModule-tvOS.xcscheme
│ │ │ └── NativeAndroidModule.xcscheme
│ ├── NativeAndroidModule
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── NativeAndroidModuleTests
│ │ ├── Info.plist
│ │ └── NativeAndroidModuleTests.m
│ ├── package.json
│ └── yarn.lock
├── 12-03
└── GetSystemVolumeAndroid
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── getsystemvolumeandroid
│ │ │ │ ├── MainActivity.java
│ │ │ │ ├── MainApplication.java
│ │ │ │ ├── VolumeModule.java
│ │ │ │ └── VolumePackage.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ ├── GetSystemVolumeAndroid-tvOS
│ │ └── Info.plist
│ ├── GetSystemVolumeAndroid-tvOSTests
│ │ └── Info.plist
│ ├── GetSystemVolumeAndroid.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── GetSystemVolumeAndroid-tvOS.xcscheme
│ │ │ └── GetSystemVolumeAndroid.xcscheme
│ ├── GetSystemVolumeAndroid
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── GetSystemVolumeAndroidTests
│ │ ├── GetSystemVolumeAndroidTests.m
│ │ └── Info.plist
│ ├── package.json
│ ├── volume.js
│ └── yarn.lock
├── 13-03
├── JPushDemo
│ ├── .babelrc
│ ├── .buckconfig
│ ├── .flowconfig
│ ├── .gitattributes
│ ├── .watchmanconfig
│ ├── App.js
│ ├── android
│ │ ├── app
│ │ │ ├── BUCK
│ │ │ ├── build.gradle
│ │ │ ├── proguard-rules.pro
│ │ │ └── src
│ │ │ │ └── main
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── jpushdemo
│ │ │ │ │ ├── MainActivity.java
│ │ │ │ │ └── MainApplication.java
│ │ │ │ └── res
│ │ │ │ ├── mipmap-hdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-mdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ └── values
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ ├── build.gradle
│ │ ├── gradle.properties
│ │ ├── gradle
│ │ │ └── wrapper
│ │ │ │ ├── gradle-wrapper.jar
│ │ │ │ └── gradle-wrapper.properties
│ │ ├── gradlew
│ │ ├── gradlew.bat
│ │ ├── keystores
│ │ │ ├── BUCK
│ │ │ └── debug.keystore.properties
│ │ └── settings.gradle
│ ├── app.json
│ ├── index.js
│ ├── ios
│ │ ├── JPushDemo-tvOS
│ │ │ └── Info.plist
│ │ ├── JPushDemo-tvOSTests
│ │ │ └── Info.plist
│ │ ├── JPushDemo.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ ├── JPushDemo-tvOS.xcscheme
│ │ │ │ └── JPushDemo.xcscheme
│ │ ├── JPushDemo
│ │ │ ├── AppDelegate.h
│ │ │ ├── AppDelegate.m
│ │ │ ├── Base.lproj
│ │ │ │ └── LaunchScreen.xib
│ │ │ ├── Images.xcassets
│ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ └── Contents.json
│ │ │ │ └── Contents.json
│ │ │ ├── Info.plist
│ │ │ └── main.m
│ │ └── JPushDemoTests
│ │ │ ├── Info.plist
│ │ │ └── JPushDemoTests.m
│ ├── package.json
│ └── yarn.lock
└── api.cs
├── README.md
├── picker_demo
├── .babelrc
├── .buckconfig
├── .flowconfig
├── .gitattributes
├── .watchmanconfig
├── App.js
├── android
│ ├── app
│ │ ├── BUCK
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ └── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── picker_demo
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── MainApplication.java
│ │ │ └── res
│ │ │ ├── mipmap-hdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-mdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ └── values
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── keystores
│ │ ├── BUCK
│ │ └── debug.keystore.properties
│ └── settings.gradle
├── app.json
├── index.js
├── ios
│ ├── picker_demo-tvOS
│ │ └── Info.plist
│ ├── picker_demo-tvOSTests
│ │ └── Info.plist
│ ├── picker_demo.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ ├── picker_demo-tvOS.xcscheme
│ │ │ └── picker_demo.xcscheme
│ ├── picker_demo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ └── LaunchScreen.xib
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ └── main.m
│ └── picker_demoTests
│ │ ├── Info.plist
│ │ └── picker_demoTests.m
├── package.json
└── yarn.lock
└── 《React Native精解与实战》试读(第一章至第三章).pdf
/01-01-02/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/01-01-02/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "01-01-02",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "",
10 | "license": "ISC",
11 | "dependencies": {
12 | "babel-preset-es2015": "^6.14.0",
13 | "babel-preset-react": "^6.11.1",
14 | "babelify": "^7.3.0",
15 | "react": "^15.3.2",
16 | "react-dom": "^15.3.2",
17 | "webpack": "^1.13.2",
18 | "webpack-dev-server": "^1.16.1"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/app/src/main/java/com/helloreact/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.helloreact;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "HelloReact";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/02-02-02/HelloReact/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/02-02-02/HelloReact/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/02-02-02/HelloReact/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/02-02-02/HelloReact/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | HelloReact
3 |
4 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/02-02-02/HelloReact/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sat Jan 13 22:30:54 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'HelloReact'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "HelloReact",
3 | "displayName": "HelloReact"
4 | }
--------------------------------------------------------------------------------
/02-02-02/HelloReact/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('HelloReact', () => App);
5 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/ios/HelloReact/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/ios/HelloReact/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/02-02-02/HelloReact/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "HelloReact",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "16.2.0",
11 | "react-native": "0.52.0"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "22.0.6",
15 | "babel-preset-react-native": "4.0.0",
16 | "jest": "22.0.6",
17 | "react-test-renderer": "16.2.0"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/03-04/parent-2-child.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 章节: 03-04
3 | * 父子组件通信,在父组件中调用子组件
4 | * FilePath: /03-04/parent-2-child.js
5 | * @Parry
6 | */
7 |
8 |
9 |
10 | /**
11 | * 章节: 03-04
12 | * 子组件实现,通过 props 获取父页面传递的值
13 | * FilePath: /03-04/parent-2-child.js
14 | * @Parry
15 | */
16 |
17 | class ChildComponent extends Component {
18 | render() {
19 | return (
20 | Hello {this.props.name}!
21 | );
22 | }
23 | }
--------------------------------------------------------------------------------
/04-03/align-items.html:
--------------------------------------------------------------------------------
1 |
7 |
15 |
16 |
1
17 |
2
18 |
3
19 |
4
20 |
5
21 |
22 |
--------------------------------------------------------------------------------
/04-03/flex-basis.html:
--------------------------------------------------------------------------------
1 |
7 |
14 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/app/src/main/java/com/viewcomponent/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.viewcomponent;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "ViewComponent";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-02/ViewComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-02/ViewComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-02/ViewComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-02/ViewComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ViewComponent
3 |
4 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-02/ViewComponent/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
6 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'ViewComponent'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ViewComponent",
3 | "displayName": "ViewComponent"
4 | }
--------------------------------------------------------------------------------
/06-02/ViewComponent/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('ViewComponent', () => App);
5 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/ios/ViewComponent/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/ios/ViewComponent/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/06-02/ViewComponent/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ViewComponent",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "16.2.0",
11 | "react-native": "0.52.1"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "22.1.0",
15 | "babel-preset-react-native": "4.0.0",
16 | "jest": "22.1.4",
17 | "react-test-renderer": "16.2.0"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/06-03/TabBarComponent/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/app/src/main/java/com/tabbarcomponent/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.tabbarcomponent;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "TabBarComponent";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | TabBarComponent
3 |
4 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponent/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sat Jan 27 16:03:44 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'TabBarComponent'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "TabBarComponent",
3 | "displayName": "TabBarComponent"
4 | }
--------------------------------------------------------------------------------
/06-03/TabBarComponent/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('TabBarComponent', () => App);
5 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/ios/TabBarComponent/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/ios/TabBarComponent/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/06-03/TabBarComponent/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "TabBarComponent",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "16.2.0",
11 | "react-native": "0.52.2"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "22.1.0",
15 | "babel-preset-react-native": "4.0.0",
16 | "jest": "22.1.4",
17 | "react-test-renderer": "16.2.0"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/app/src/main/java/com/tabbarcomponentandroid/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.tabbarcomponentandroid;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "TabBarComponentAndroid";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponentAndroid/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponentAndroid/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponentAndroid/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponentAndroid/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | TabBarComponentAndroid
3 |
4 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponentAndroid/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sat Jan 27 22:22:12 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'TabBarComponentAndroid'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "TabBarComponentAndroid",
3 | "displayName": "TabBarComponentAndroid"
4 | }
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/flux.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponentAndroid/flux.png
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('TabBarComponentAndroid', () => App);
5 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/ios/TabBarComponentAndroid/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/ios/TabBarComponentAndroid/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/06-03/TabBarComponentAndroid/relay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-03/TabBarComponentAndroid/relay.png
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/app/src/main/java/com/navigatorioscomponent/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.navigatorioscomponent;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "NavigatorIOSComponent";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/NavigatorIOSComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/NavigatorIOSComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/NavigatorIOSComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/NavigatorIOSComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | NavigatorIOSComponent
3 |
4 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/NavigatorIOSComponent/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
6 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'NavigatorIOSComponent'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "NavigatorIOSComponent",
3 | "displayName": "NavigatorIOSComponent"
4 | }
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('NavigatorIOSComponent', () => App);
5 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/ios/NavigatorIOSComponent/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/06-04/NavigatorIOSComponent/ios/NavigatorIOSComponent/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/android/app/src/main/ic_launcher-web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/android/app/src/main/ic_launcher-web.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/android/app/src/main/java/com/example/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.example;
2 |
3 | import com.reactnativenavigation.controllers.SplashActivity;
4 |
5 | public class MainActivity extends SplashActivity {
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | React Native Navigation
3 |
4 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sun Jan 28 19:31:28 IST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'example'
2 |
3 | include ':app'
4 | include ':react-native-navigation'
5 | project(':react-native-navigation').projectDir = new File(
6 | rootProject.projectDir, '../node_modules/react-native-navigation/android/app/')
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/beach.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/beach.jpg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/colors.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/colors.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/delete@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/delete@1x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/delete@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/delete@2x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/edit@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/edit@1x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/edit@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/edit@2x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/gyro_header.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/gyro_header.jpg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/heroes/bouny_hunter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/heroes/bouny_hunter.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/heroes/earthspirit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/heroes/earthspirit.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/heroes/oracle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/heroes/oracle.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/heroes/skywrath_mage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/heroes/skywrath_mage.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/heroes/templar_assasin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/heroes/templar_assasin.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/list@1.5x.android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/list@1.5x.android.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/list@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/list@1x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/list@2x.android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/list@2x.android.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/list@3x.android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/list@3x.android.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/list@4x.android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/list@4x.android.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/158xD4xbeh.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/158xD4xbeh.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/37r6Cqp1B8.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/37r6Cqp1B8.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/5Gi8kova3k.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/5Gi8kova3k.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/61mpAVRV73.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/61mpAVRV73.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/A4g0lZ33Z8.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/A4g0lZ33Z8.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/AdGXmD1CH6.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/AdGXmD1CH6.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/Cfw87359UT.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/Cfw87359UT.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/N30E32431C.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/N30E32431C.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/a848dHxA4e.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/a848dHxA4e.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/j51Pva1P8L.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/j51Pva1P8L.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/kVN0FryOZk.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/kVN0FryOZk.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/pqgylg80SD.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/pqgylg80SD.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/rVOcz7rd0z.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/rVOcz7rd0z.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/ri90ueind7.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/ri90ueind7.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/v8KLi2f0Tr.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/v8KLi2f0Tr.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/masonry/xU42hx19BB.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/masonry/xU42hx19BB.jpeg
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/navicon_add@2x.android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/navicon_add@2x.android.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/navicon_add@2x.ios.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/navicon_add@2x.ios.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/navicon_add@3x.android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/navicon_add@3x.android.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/navicon_edit@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/navicon_edit@2x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/navicon_menu@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/navicon_menu@2x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/one@1.5x.android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/one@1.5x.android.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/one@1x.android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/one@1x.android.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/one@2x.ios.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/one@2x.ios.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/one@3x.android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/one@3x.android.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/one@4x.android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/one@4x.android.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/one_selected@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/one_selected@2x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/swap@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/swap@1x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/swap@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/swap@2x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/three@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/three@2x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/three_selected@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/three_selected@2x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/transform@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/transform@1x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/transform@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/transform@2x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/two@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/two@2x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/img/two_selected@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-04/ReactNativeNavigationAndroid/img/two_selected@2x.png
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/index.js:
--------------------------------------------------------------------------------
1 | __STRESS_TEST__ = false;
2 | import App from './src/app';
3 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/ios/example/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/scripts/postinstall.js:
--------------------------------------------------------------------------------
1 | const cp = require('child_process');
2 | cp.execSync(`rm -rf node_modules/react-native-navigation/node_modules`);
3 | cp.execSync(`rm -rf node_modules/react-native-navigation/example `);
4 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/src/screens/types/tabs/TabOne.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import {View, Text} from 'react-native';
3 |
4 | class TabOne extends React.Component {
5 |
6 | render() {
7 | return (
8 |
9 | Tab One
10 |
11 | );
12 | }
13 | }
14 |
15 | export default TabOne;
16 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/src/screens/types/tabs/TabTwo.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import {View, Text} from 'react-native';
3 |
4 | class TabOne extends React.Component {
5 |
6 | render() {
7 | return (
8 |
9 | Tab Two
10 |
11 | );
12 | }
13 | }
14 |
15 | export default TabOne;
16 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/test/e2e/init.js:
--------------------------------------------------------------------------------
1 | /*eslint-disable*/
2 | const detox = require('detox');
3 | const config = require('../../package.json').detox;
4 |
5 | before(async () => {
6 | await detox.init(config);
7 | });
8 |
9 | after(async () => {
10 | await detox.cleanup();
11 | });
12 |
13 |
14 |
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/test/e2e/mocha.opts:
--------------------------------------------------------------------------------
1 | --recursive
2 | --timeout 60000
3 | --require babel-polyfill
4 | --compilers js:babel-core/register
--------------------------------------------------------------------------------
/06-04/ReactNativeNavigationAndroid/test/e2e/sanity.test.js:
--------------------------------------------------------------------------------
1 | describe('sanity', () => {
2 |
3 | beforeEach(async () => await global.device.reloadReactNative());
4 |
5 | it('should push a screen', async () => {
6 | await element(by.id('pushScreen')).tap();
7 |
8 | await expect(element(by.label('Pushed Screen'))).toBeVisible();
9 | });
10 |
11 | });
12 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/app/src/main/java/com/imagecomponent/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.imagecomponent;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "ImageComponent";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-05/ImageComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-05/ImageComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-05/ImageComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-05/ImageComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ImageComponent
3 |
4 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-05/ImageComponent/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Tue Jan 30 22:44:21 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'ImageComponent'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ImageComponent",
3 | "displayName": "ImageComponent"
4 | }
--------------------------------------------------------------------------------
/06-05/ImageComponent/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('ImageComponent', () => App);
5 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/ios/ImageComponent/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/ios/ImageComponent/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/06-05/ImageComponent/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ImageComponent",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "16.2.0",
11 | "react-native": "0.52.2"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "22.1.0",
15 | "babel-preset-react-native": "4.0.0",
16 | "jest": "22.1.4",
17 | "react-test-renderer": "16.2.0"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/06-05/ImageComponent/react-native.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-05/ImageComponent/react-native.png
--------------------------------------------------------------------------------
/06-06/TextComponent/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/06-06/TextComponent/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/06-06/TextComponent/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/06-06/TextComponent/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/06-06/TextComponent/android/app/src/main/java/com/textcomponent/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.textcomponent;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "TextComponent";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/06-06/TextComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-06/TextComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-06/TextComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-06/TextComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-06/TextComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-06/TextComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-06/TextComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-06/TextComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-06/TextComponent/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | TextComponent
3 |
4 |
--------------------------------------------------------------------------------
/06-06/TextComponent/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/06-06/TextComponent/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-06/TextComponent/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/06-06/TextComponent/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Jan 31 14:48:33 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/06-06/TextComponent/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/06-06/TextComponent/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/06-06/TextComponent/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'TextComponent'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/06-06/TextComponent/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "TextComponent",
3 | "displayName": "TextComponent"
4 | }
--------------------------------------------------------------------------------
/06-06/TextComponent/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('TextComponent', () => App);
5 |
--------------------------------------------------------------------------------
/06-06/TextComponent/ios/TextComponent/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/06-06/TextComponent/ios/TextComponent/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/06-06/TextComponent/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "TextComponent",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "16.2.0",
11 | "react-native": "0.52.2"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "22.1.0",
15 | "babel-preset-react-native": "4.0.0",
16 | "jest": "22.1.4",
17 | "react-test-renderer": "16.2.0"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/06-07/TextInputComponent/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/06-07/TextInputComponent/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/06-07/TextInputComponent/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/06-07/TextInputComponent/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/06-07/TextInputComponent/README.md:
--------------------------------------------------------------------------------
1 | ## React Native Screens
2 |
3 | Implementations of [http://www.invisionapp.com/do](http://www.invisionapp.com/do) in `react-native`
4 |
5 |
6 | Login1: 
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/app/src/main/java/com/screens/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.screens;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "screens";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | screens
3 |
4 |
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip
6 |
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = 'debug',
3 | store = 'debug.keystore',
4 | properties = 'debug.keystore.properties',
5 | visibility = [
6 | 'PUBLIC',
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/06-07/TextInputComponent/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'screens'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/06-07/TextInputComponent/ios/screens/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/06-07/TextInputComponent/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "allowJs": true,
4 | "allowSyntheticDefaultImports": true
5 | },
6 | "exclude": [
7 | "node_modules"
8 | ]
9 | }
--------------------------------------------------------------------------------
/06-07/TextInputComponent/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "screens",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "15.4.1",
11 | "react-native": "0.39.2"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "17.0.2",
15 | "babel-preset-react-native": "1.9.0",
16 | "jest": "17.0.3",
17 | "react-test-renderer": "15.4.1"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/06-07/TextInputComponent/screens/login/login1_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/screens/login/login1_bg.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/screens/login/login1_lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/screens/login/login1_lock.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/screens/login/login1_mark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/screens/login/login1_mark.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/screens/login/login1_person.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/screens/login/login1_person.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/screens/signup/back.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/screens/signup/back.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/screens/signup/signup_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/screens/signup/signup_bg.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/screens/signup/signup_birthday.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/screens/signup/signup_birthday.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/screens/signup/signup_email.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/screens/signup/signup_email.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/screens/signup/signup_lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/screens/signup/signup_lock.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/screens/signup/signup_person.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/screens/signup/signup_person.png
--------------------------------------------------------------------------------
/06-07/TextInputComponent/signup_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-07/TextInputComponent/signup_bg.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/06-08/TouchComponent/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/06-08/TouchComponent/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/06-08/TouchComponent/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/06-08/TouchComponent/README.md:
--------------------------------------------------------------------------------
1 | ## React Native Screens
2 |
3 | Implementations of [http://www.invisionapp.com/do](http://www.invisionapp.com/do) in `react-native`
4 |
5 |
6 | Login1: 
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/app/src/main/java/com/screens/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.screens;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "screens";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | screens
3 |
4 |
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip
6 |
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = 'debug',
3 | store = 'debug.keystore',
4 | properties = 'debug.keystore.properties',
5 | visibility = [
6 | 'PUBLIC',
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/06-08/TouchComponent/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'screens'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/06-08/TouchComponent/ios/screens/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/06-08/TouchComponent/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "allowJs": true,
4 | "allowSyntheticDefaultImports": true
5 | },
6 | "exclude": [
7 | "node_modules"
8 | ]
9 | }
--------------------------------------------------------------------------------
/06-08/TouchComponent/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "screens",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "15.4.1",
11 | "react-native": "0.39.2"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "17.0.2",
15 | "babel-preset-react-native": "1.9.0",
16 | "jest": "17.0.3",
17 | "react-test-renderer": "15.4.1"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/06-08/TouchComponent/screens/login/login1_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/screens/login/login1_bg.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/screens/login/login1_lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/screens/login/login1_lock.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/screens/login/login1_mark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/screens/login/login1_mark.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/screens/login/login1_person.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/screens/login/login1_person.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/screens/signup/back.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/screens/signup/back.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/screens/signup/signup_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/screens/signup/signup_bg.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/screens/signup/signup_birthday.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/screens/signup/signup_birthday.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/screens/signup/signup_email.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/screens/signup/signup_email.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/screens/signup/signup_lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/screens/signup/signup_lock.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/screens/signup/signup_person.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/screens/signup/signup_person.png
--------------------------------------------------------------------------------
/06-08/TouchComponent/signup_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-08/TouchComponent/signup_bg.png
--------------------------------------------------------------------------------
/06-09/WebViewComponent/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/app/src/main/java/com/webviewcomponent/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.webviewcomponent;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "WebViewComponent";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-09/WebViewComponent/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-09/WebViewComponent/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-09/WebViewComponent/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-09/WebViewComponent/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | WebViewComponent
3 |
4 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-09/WebViewComponent/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Fri Feb 02 00:38:03 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'WebViewComponent'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "WebViewComponent",
3 | "displayName": "WebViewComponent"
4 | }
--------------------------------------------------------------------------------
/06-09/WebViewComponent/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('WebViewComponent', () => App);
5 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/ios/WebViewComponent/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/ios/WebViewComponent/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/06-09/WebViewComponent/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "WebViewComponent",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "16.2.0",
11 | "react-native": "0.52.2"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "22.1.0",
15 | "babel-preset-react-native": "4.0.0",
16 | "jest": "22.1.4",
17 | "react-test-renderer": "16.2.0"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/App.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 章节: 06-10
3 | * App.js 定义,演示 ScrollView 组件的使用
4 | * FilePath: /06-10/ScrollViewDemo/App.js
5 | * @Parry
6 | */
7 |
8 | import React, { Component } from 'react';
9 | import {
10 | Platform,
11 | StyleSheet,
12 | Text,
13 | View
14 | } from 'react-native';
15 | import ScrollViewComponent from './ScrollViewComponent.js'
16 |
17 | export default class App extends Component<{}> {
18 | render() {
19 | return (
20 |
21 | );
22 | }
23 | }
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/app/src/main/java/com/scrollviewdemo/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.scrollviewdemo;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "ScrollViewDemo";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-10/ScrollViewDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-10/ScrollViewDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-10/ScrollViewDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-10/ScrollViewDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ScrollViewDemo
3 |
4 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/06-10/ScrollViewDemo/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
6 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'ScrollViewDemo'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ScrollViewDemo",
3 | "displayName": "ScrollViewDemo"
4 | }
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('ScrollViewDemo', () => App);
5 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/ios/ScrollViewDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/06-10/ScrollViewDemo/ios/ScrollViewDemo/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/07-02/Alert/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/07-02/Alert/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/07-02/Alert/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/07-02/Alert/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/07-02/Alert/README.md:
--------------------------------------------------------------------------------
1 | ## React Native Screens
2 |
3 | Implementations of [http://www.invisionapp.com/do](http://www.invisionapp.com/do) in `react-native`
4 |
5 |
6 | Login1: 
--------------------------------------------------------------------------------
/07-02/Alert/android/app/src/main/java/com/textcomponent/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.textcomponent;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "TextComponent";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/07-02/Alert/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-02/Alert/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-02/Alert/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-02/Alert/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-02/Alert/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | TextComponent
3 |
4 |
--------------------------------------------------------------------------------
/07-02/Alert/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/07-02/Alert/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/07-02/Alert/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Jan 31 14:48:33 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/07-02/Alert/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/07-02/Alert/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/07-02/Alert/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'TextComponent'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/07-02/Alert/ios/screens/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/07-02/Alert/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "allowJs": true,
4 | "allowSyntheticDefaultImports": true
5 | },
6 | "exclude": [
7 | "node_modules"
8 | ]
9 | }
--------------------------------------------------------------------------------
/07-02/Alert/other.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 章节: 07-02
3 | * 演示 Alert 功能的其他使用方法
4 | * FilePath: /07-02/Alert/other.js
5 | * @Parry
6 | */
7 |
8 | Alert.alert(
9 | '提醒的标题',
10 | '提醒的内容',
11 | [
12 | {text: '第一个按钮', onPress: () => console.log('点击后的回调函数')},
13 | {text: '取消', onPress: () => console.log('点击后的回调函数'), style: 'cancel'},
14 | {text: '确定', onPress: () => console.log('点击后的回调函数')},
15 | ],
16 | { cancelable: false }
17 | )
--------------------------------------------------------------------------------
/07-02/Alert/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "screens",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "15.4.1",
11 | "react-native": "0.39.2"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "17.0.2",
15 | "babel-preset-react-native": "1.9.0",
16 | "jest": "17.0.3",
17 | "react-test-renderer": "15.4.1"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/07-02/Alert/screens/login/login1_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/screens/login/login1_bg.png
--------------------------------------------------------------------------------
/07-02/Alert/screens/login/login1_lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/screens/login/login1_lock.png
--------------------------------------------------------------------------------
/07-02/Alert/screens/login/login1_mark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/screens/login/login1_mark.png
--------------------------------------------------------------------------------
/07-02/Alert/screens/login/login1_person.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/screens/login/login1_person.png
--------------------------------------------------------------------------------
/07-02/Alert/screens/signup/back.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/screens/signup/back.png
--------------------------------------------------------------------------------
/07-02/Alert/screens/signup/signup_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/screens/signup/signup_bg.png
--------------------------------------------------------------------------------
/07-02/Alert/screens/signup/signup_birthday.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/screens/signup/signup_birthday.png
--------------------------------------------------------------------------------
/07-02/Alert/screens/signup/signup_email.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/screens/signup/signup_email.png
--------------------------------------------------------------------------------
/07-02/Alert/screens/signup/signup_lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/screens/signup/signup_lock.png
--------------------------------------------------------------------------------
/07-02/Alert/screens/signup/signup_person.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/screens/signup/signup_person.png
--------------------------------------------------------------------------------
/07-02/Alert/signup_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-02/Alert/signup_bg.png
--------------------------------------------------------------------------------
/07-03/AppStateDemo/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/app/src/main/java/com/appstatedemo/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.appstatedemo;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "AppStateDemo";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-03/AppStateDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-03/AppStateDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-03/AppStateDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-03/AppStateDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | AppStateDemo
3 |
4 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-03/AppStateDemo/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sun Feb 04 23:21:45 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'AppStateDemo'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "AppStateDemo",
3 | "displayName": "AppStateDemo"
4 | }
--------------------------------------------------------------------------------
/07-03/AppStateDemo/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('AppStateDemo', () => App);
5 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/ios/AppStateDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/ios/AppStateDemo/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/07-03/AppStateDemo/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "AppStateDemo",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "16.2.0",
11 | "react-native": "0.52.2"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "22.1.0",
15 | "babel-preset-react-native": "4.0.0",
16 | "jest": "22.1.4",
17 | "react-test-renderer": "16.2.0"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/README.md:
--------------------------------------------------------------------------------
1 | ## React Native Screens
2 |
3 | Implementations of [http://www.invisionapp.com/do](http://www.invisionapp.com/do) in `react-native`
4 |
5 |
6 | Login1: 
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/app/src/main/java/com/textcomponent/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.textcomponent;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "TextComponent";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | TextComponent
3 |
4 |
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Jan 31 14:48:33 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'TextComponent'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/ios/screens/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "allowJs": true,
4 | "allowSyntheticDefaultImports": true
5 | },
6 | "exclude": [
7 | "node_modules"
8 | ]
9 | }
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/other.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 章节: 07-02
3 | * 演示 Alert 功能的其他使用方法
4 | * FilePath: /07-02/Alert/other.js
5 | * @Parry
6 | */
7 |
8 | Alert.alert(
9 | '提醒的标题',
10 | '提醒的内容',
11 | [
12 | {text: '第一个按钮', onPress: () => console.log('点击后的回调函数')},
13 | {text: '取消', onPress: () => console.log('点击后的回调函数'), style: 'cancel'},
14 | {text: '确定', onPress: () => console.log('点击后的回调函数')},
15 | ],
16 | { cancelable: false }
17 | )
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "screens",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "15.4.1",
11 | "react-native": "0.39.2"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "17.0.2",
15 | "babel-preset-react-native": "1.9.0",
16 | "jest": "17.0.3",
17 | "react-test-renderer": "15.4.1"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/screens/login/login1_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/screens/login/login1_bg.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/screens/login/login1_lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/screens/login/login1_lock.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/screens/login/login1_mark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/screens/login/login1_mark.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/screens/login/login1_person.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/screens/login/login1_person.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/screens/signup/back.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/screens/signup/back.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/screens/signup/signup_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/screens/signup/signup_bg.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/screens/signup/signup_birthday.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/screens/signup/signup_birthday.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/screens/signup/signup_email.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/screens/signup/signup_email.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/screens/signup/signup_lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/screens/signup/signup_lock.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/screens/signup/signup_person.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/screens/signup/signup_person.png
--------------------------------------------------------------------------------
/07-04/AsyncStorageDemo/signup_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-04/AsyncStorageDemo/signup_bg.png
--------------------------------------------------------------------------------
/07-05/CameraDemo/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/app/src/main/java/com/camerademo/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.camerademo;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "CameraDemo";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-05/CameraDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-05/CameraDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-05/CameraDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-05/CameraDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | CameraDemo
3 |
4 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-05/CameraDemo/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Tue Feb 06 16:59:09 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'CameraDemo'
2 | include ':react-native-image-picker'
3 | project(':react-native-image-picker').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-image-picker/android')
4 |
5 | include ':app'
6 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "CameraDemo",
3 | "displayName": "CameraDemo"
4 | }
--------------------------------------------------------------------------------
/07-05/CameraDemo/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('CameraDemo', () => App);
5 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/ios/CameraDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/07-05/CameraDemo/ios/CameraDemo/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/app/src/main/java/com/geolocationdemo/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.geolocationdemo;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "GeolocationDemo";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-06/GeolocationDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-06/GeolocationDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-06/GeolocationDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-06/GeolocationDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | GeolocationDemo
3 |
4 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/07-06/GeolocationDemo/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Feb 07 10:55:06 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'GeolocationDemo'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "GeolocationDemo",
3 | "displayName": "GeolocationDemo"
4 | }
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('GeolocationDemo', () => App);
5 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/ios/GeolocationDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/ios/GeolocationDemo/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/07-06/GeolocationDemo/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "GeolocationDemo",
3 | "version": "0.0.1",
4 | "private": true,
5 | "scripts": {
6 | "start": "node node_modules/react-native/local-cli/cli.js start",
7 | "test": "jest"
8 | },
9 | "dependencies": {
10 | "react": "16.2.0",
11 | "react-native": "0.53.0"
12 | },
13 | "devDependencies": {
14 | "babel-jest": "22.1.0",
15 | "babel-preset-react-native": "4.0.0",
16 | "jest": "22.1.4",
17 | "react-test-renderer": "16.2.0"
18 | },
19 | "jest": {
20 | "preset": "react-native"
21 | }
22 | }
--------------------------------------------------------------------------------
/08-03/ListDemo/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/08-03/ListDemo/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/08-03/ListDemo/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/08-03/ListDemo/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/08-03/ListDemo/android/app/src/main/assets/index.android.bundle.meta:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/08-03/ListDemo/android/app/src/main/assets/index.android.bundle.meta
--------------------------------------------------------------------------------
/08-03/ListDemo/android/app/src/main/java/com/tabbarcomponentandroid/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.tabbarcomponentandroid;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "TabBarComponentAndroid";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/08-03/ListDemo/android/app/src/main/res/drawable-mdpi/flux.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/08-03/ListDemo/android/app/src/main/res/drawable-mdpi/flux.png
--------------------------------------------------------------------------------
/08-03/ListDemo/android/app/src/main/res/drawable-mdpi/relay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/08-03/ListDemo/android/app/src/main/res/drawable-mdpi/relay.png
--------------------------------------------------------------------------------
/08-03/ListDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/08-03/ListDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/08-03/ListDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/08-03/ListDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/08-03/ListDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/08-03/ListDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/08-03/ListDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/08-03/ListDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/08-03/ListDemo/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | TabBarComponentAndroid
3 |
4 |
--------------------------------------------------------------------------------
/08-03/ListDemo/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/08-03/ListDemo/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/08-03/ListDemo/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/08-03/ListDemo/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sat Jan 27 22:22:12 CST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/08-03/ListDemo/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/08-03/ListDemo/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/08-03/ListDemo/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'TabBarComponentAndroid'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/08-03/ListDemo/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "TabBarComponentAndroid",
3 | "displayName": "TabBarComponentAndroid"
4 | }
--------------------------------------------------------------------------------
/08-03/ListDemo/flux.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/08-03/ListDemo/flux.png
--------------------------------------------------------------------------------
/08-03/ListDemo/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('TabBarComponentAndroid', () => App);
5 |
--------------------------------------------------------------------------------
/08-03/ListDemo/ios/TabBarComponentAndroid/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/08-03/ListDemo/ios/TabBarComponentAndroid/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/08-03/ListDemo/relay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/08-03/ListDemo/relay.png
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/app/src/main/java/com/nativeiosmodule/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.nativeiosmodule;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "NativeiOSModule";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/11-02/NativeiOSModule/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/11-02/NativeiOSModule/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/11-02/NativeiOSModule/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/11-02/NativeiOSModule/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | NativeiOSModule
3 |
4 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/11-02/NativeiOSModule/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
6 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'NativeiOSModule'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "NativeiOSModule",
3 | "displayName": "NativeiOSModule"
4 | }
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('NativeiOSModule', () => App);
5 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/ios/MyModule.h:
--------------------------------------------------------------------------------
1 | #import "RCTBridgeModule.h"
2 |
3 | @interface MyModule : NSObject
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/ios/MyModule.m:
--------------------------------------------------------------------------------
1 | #import "MyModule.h"
2 |
3 | @implementation MyModule
4 |
5 | // 需要包含的宏定义
6 | RCT_EXPORT_MODULE()
7 |
8 | // 定义了一个返回的字符串
9 | - (NSDictionary *)constantsToExport {
10 | return @{@"hello": @"你好,这是我编写的第一个 iOS 原生模块!"};
11 | }
12 |
13 | // 定义了一个可被调用的函数
14 | RCT_EXPORT_METHOD(squareMe:(NSString *)number:(RCTResponseSenderBlock)callback) {
15 | int num = [number intValue];
16 | callback(@[[NSNull null], [NSNumber numberWithInt:(num*num)]]);
17 | }
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/ios/NativeiOSModule/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/11-02/NativeiOSModule/ios/NativeiOSModule/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/app/src/main/java/com/getsystemvolume/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.getsystemvolume;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "GetSystemVolume";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/11-03/GetSystemVolume/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/11-03/GetSystemVolume/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/11-03/GetSystemVolume/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/11-03/GetSystemVolume/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | GetSystemVolume
3 |
4 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/11-03/GetSystemVolume/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
6 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'GetSystemVolume'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "GetSystemVolume",
3 | "displayName": "GetSystemVolume"
4 | }
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('GetSystemVolume', () => App);
5 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/ios/GetSystemVolume/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/ios/GetSystemVolume/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/11-03/GetSystemVolume/ios/OutputVolume.h:
--------------------------------------------------------------------------------
1 | #import "React/RCTBridgeModule.h"
2 |
3 | @interface OutputVolume : NSObject
4 | @end
5 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/MyAndroidModule.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 章节: 12-02
3 | * 定义 Android 平台的原生组件进行导出使用
4 | * FilePath: /12-02/NativeAndroidModule/MyAndroidModule.js
5 | * @Parry
6 | */
7 |
8 | import { NativeModules } from "react-native";
9 | module.exports = NativeModules.MyModule;
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/app/src/main/java/com/nativeandroidmodule/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.nativeandroidmodule;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "NativeAndroidModule";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/12-02/NativeAndroidModule/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/12-02/NativeAndroidModule/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/12-02/NativeAndroidModule/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/12-02/NativeAndroidModule/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | NativeAndroidModule
3 |
4 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/12-02/NativeAndroidModule/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
6 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'NativeAndroidModule'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "NativeAndroidModule",
3 | "displayName": "NativeAndroidModule"
4 | }
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('NativeAndroidModule', () => App);
5 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/ios/NativeAndroidModule/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/12-02/NativeAndroidModule/ios/NativeAndroidModule/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/app/src/main/java/com/getsystemvolumeandroid/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.getsystemvolumeandroid;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "GetSystemVolumeAndroid";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/12-03/GetSystemVolumeAndroid/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/12-03/GetSystemVolumeAndroid/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/12-03/GetSystemVolumeAndroid/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/12-03/GetSystemVolumeAndroid/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | GetSystemVolumeAndroid
3 |
4 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/12-03/GetSystemVolumeAndroid/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
6 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'GetSystemVolumeAndroid'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "GetSystemVolumeAndroid",
3 | "displayName": "GetSystemVolumeAndroid"
4 | }
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('GetSystemVolumeAndroid', () => App);
5 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/ios/GetSystemVolumeAndroid/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/12-03/GetSystemVolumeAndroid/volume.js:
--------------------------------------------------------------------------------
1 | import { NativeModules } from 'react-native'
2 |
3 | export const getSystemVolume = (callback) => {
4 | NativeModules.Volume.getSystemVolume(callback)
5 | }
--------------------------------------------------------------------------------
/13-03/JPushDemo/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["react-native"]
3 | }
4 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/app/src/main/java/com/jpushdemo/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.jpushdemo;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "JPushDemo";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/13-03/JPushDemo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/13-03/JPushDemo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/13-03/JPushDemo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/13-03/JPushDemo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | JPushDemo
3 |
4 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/13-03/JPushDemo/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
6 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'JPushDemo'
2 |
3 | include ':app', ':jpush-react-native', ':jcore-react-native'
4 | project(':jpush-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/jpush-react-native/android')
5 | project(':jcore-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/jcore-react-native/android')
6 |
7 | include ':app'
8 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "JPushDemo",
3 | "displayName": "JPushDemo"
4 | }
--------------------------------------------------------------------------------
/13-03/JPushDemo/index.js:
--------------------------------------------------------------------------------
1 | import { AppRegistry } from 'react-native';
2 | import App from './App';
3 |
4 | AppRegistry.registerComponent('JPushDemo', () => App);
5 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/ios/JPushDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | * All rights reserved.
4 | *
5 | * This source code is licensed under the BSD-style license found in the
6 | * LICENSE file in the root directory of this source tree. An additional grant
7 | * of patent rights can be found in the PATENTS file in the same directory.
8 | */
9 |
10 | #import
11 |
12 | @interface AppDelegate : UIResponder
13 |
14 | @property (nonatomic, strong) UIWindow *window;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/13-03/JPushDemo/ios/JPushDemo/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/picker_demo/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["module:metro-react-native-babel-preset"]
3 | }
4 |
--------------------------------------------------------------------------------
/picker_demo/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/picker_demo/.gitattributes:
--------------------------------------------------------------------------------
1 | *.pbxproj -text
2 |
--------------------------------------------------------------------------------
/picker_demo/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/java/com/picker_demo/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.picker_demo;
2 |
3 | import com.facebook.react.ReactActivity;
4 |
5 | public class MainActivity extends ReactActivity {
6 |
7 | /**
8 | * Returns the name of the main component registered from JavaScript.
9 | * This is used to schedule rendering of the component.
10 | */
11 | @Override
12 | protected String getMainComponentName() {
13 | return "picker_demo";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/picker_demo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/picker_demo/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/picker_demo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/picker_demo/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/picker_demo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/picker_demo/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/picker_demo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/picker_demo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/picker_demo/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/picker_demo/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | picker_demo
3 |
4 |
--------------------------------------------------------------------------------
/picker_demo/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/picker_demo/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/picker_demo/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/picker_demo/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip
6 |
--------------------------------------------------------------------------------
/picker_demo/android/keystores/BUCK:
--------------------------------------------------------------------------------
1 | keystore(
2 | name = "debug",
3 | properties = "debug.keystore.properties",
4 | store = "debug.keystore",
5 | visibility = [
6 | "PUBLIC",
7 | ],
8 | )
9 |
--------------------------------------------------------------------------------
/picker_demo/android/keystores/debug.keystore.properties:
--------------------------------------------------------------------------------
1 | key.store=debug.keystore
2 | key.alias=androiddebugkey
3 | key.store.password=android
4 | key.alias.password=android
5 |
--------------------------------------------------------------------------------
/picker_demo/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'picker_demo'
2 |
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/picker_demo/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "picker_demo",
3 | "displayName": "picker_demo"
4 | }
--------------------------------------------------------------------------------
/picker_demo/index.js:
--------------------------------------------------------------------------------
1 | /** @format */
2 |
3 | import {AppRegistry} from 'react-native';
4 | import App from './App';
5 | import {name as appName} from './app.json';
6 |
7 | AppRegistry.registerComponent(appName, () => App);
8 |
--------------------------------------------------------------------------------
/picker_demo/ios/picker_demo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #import
9 |
10 | @interface AppDelegate : UIResponder
11 |
12 | @property (nonatomic, strong) UIWindow *window;
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/picker_demo/ios/picker_demo/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/picker_demo/ios/picker_demo/main.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Facebook, Inc.
3 | *
4 | * This source code is licensed under the MIT license found in the
5 | * LICENSE file in the root directory of this source tree.
6 | */
7 |
8 | #import
9 |
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/《React Native精解与实战》试读(第一章至第三章).pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ParryQiu/ReactNative-Book-Demo/77862984df847dda73706d0483992650570e8416/《React Native精解与实战》试读(第一章至第三章).pdf
--------------------------------------------------------------------------------