From a03f68d4d35187b203430778c43ffc37df2fd538 Mon Sep 17 00:00:00 2001 From: Yedidya Kennard Date: Thu, 30 Jun 2016 12:47:50 +0300 Subject: [PATCH] Android GalleryView in example --- example/AlbumsScreen.android.js | 10 +-- example/GalleryScreen.android.js | 117 +++++++++++++++++++++++++++++++ 2 files changed, 122 insertions(+), 5 deletions(-) create mode 100644 example/GalleryScreen.android.js diff --git a/example/AlbumsScreen.android.js b/example/AlbumsScreen.android.js index 3f0242b..ffb6331 100644 --- a/example/AlbumsScreen.android.js +++ b/example/AlbumsScreen.android.js @@ -18,7 +18,7 @@ import { //CameraKitCamera, } from 'react-native-camera-kit'; -//import GalleryScreen from './GalleryScreen'; +import GalleryScreen from './GalleryScreen'; export default class AlbumsScreen extends Component { @@ -39,10 +39,10 @@ export default class AlbumsScreen extends Component { render() { - //if (this.state.albumName) { - // const albumName = this.state.albumName; - // return ; - //} + if (this.state.albumName) { + const albumName = this.state.albumName; + return ; + } return ( diff --git a/example/GalleryScreen.android.js b/example/GalleryScreen.android.js new file mode 100644 index 0000000..53955c4 --- /dev/null +++ b/example/GalleryScreen.android.js @@ -0,0 +1,117 @@ +import React, {Component} from 'react'; +import { + AppRegistry, + StyleSheet, + Text, + View, + ListView, + TouchableOpacity, + Image, + Dimensions +} from 'react-native'; + +import _ from 'lodash'; + +import { + CameraKitGalleryView +} from 'react-native-camera-kit'; + +var groupByEveryN = require('groupByEveryN'); +const ds = new ListView.DataSource({ + rowHasChanged: (r1, r2) => r1 !== r2 +}); + +const size = Math.floor((Dimensions.get('window').width) / 3); +const innerSize = size - 6; + +export default class GalleryScreenNative extends Component { + + static navigatorButtons = { + rightButtons: [ + { + title: 'Done', + id: 'navBarDone' + } + ] + }; + + async onNavigatorEvent(event) { + if (event.type === 'NavBarButtonPress') { + if (event.id === 'navBarDone') { + const selected = await this.gallery.getSelectedImages(); + + this.props.navigator.push({ + screen: 'media.PreviewScreen', + title: 'Preview', + backButtonTitle: 'Albums', + passProps: { + imagesData: selected.selectedImages + }, + navigatorStyle: { + navBarHidden: true + } + }); + } + } + } + + constructor(props) { + super(props); + this.state = { + album: this.props.albumName + } + } + + render() { + console.log('IN RENDER!'); + console.log(CameraKitGalleryView); + return ( + { + this.gallery = gallery; + }} + style={{flex:1}} + albumName={this.state.album} + minimumInteritemSpacing={10} + minimumLineSpacing={10} + /> + + + ) + } +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + backgroundColor: '#F5FCFF', + marginTop: 20 + }, + listView: { + //flex:1, + //flexDirection:'column', + paddingTop: 0, + margin: 8, + backgroundColor: '#D6DAC2', + + }, + row: { + flexDirection: 'column', + flex: 1, + }, + image: { + width: innerSize, + height: innerSize, + alignItems: 'center', + justifyContent: 'center' + }, + rowContainer: { + width: size, + height: size, + alignItems: 'center', + justifyContent: 'center', + }, +}); +