Advertisement
rodrigofbm

Untitled

Apr 2nd, 2018
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. [...]
  2. constructor(props){
  3.     super(props);
  4.  
  5.     this.state = {
  6.       responseImage: [],
  7.      
  8.     }
  9.    this.responseArray= []
  10.   }
  11.  
  12.  
  13.   escolherImagem(){
  14.     const options = {
  15.       title: 'Escolha uma imagem',
  16.       storageOptions: {
  17.         skipBackup: true,
  18.         path: 'images'
  19.       }
  20.     };
  21.  
  22.     return ImagePicker.showImagePicker(options, (response) => {
  23.       console.log('Response = ', response);
  24.  
  25.       this.responseArray.push(response);
  26.       console.log('responseArray', this.responseArray)
  27.      
  28.       this.setState({responseImage: this.responseArray});
  29.       console.log('responseImage', this.state.responseImage)      
  30.      
  31.       if (response.didCancel) {
  32.         console.log('User cancelled image picker');
  33.       }
  34.       else if (response.error) {
  35.         console.log('ImagePicker Error: ', response.error);
  36.         Alert.alert(
  37.           'Erro',
  38.           'Escolha um formado válido de imagem',
  39.           [
  40.             {text: 'OK', onPress: () => false},
  41.           ],
  42.           { cancelable: false }
  43.         )
  44.       }
  45.     });
  46.   }
  47.  
  48.   chooseImages(){
  49.     return(
  50.       <TouchableHighlight
  51.         style={{marginHorizontal: 15}}
  52.         underlayColor='#f8f8ff'
  53.         activeOpacity = {0.3}
  54.         onPress={() => this.escolherImagem()}
  55.       >
  56.       <Icon name="ios-image" color="#6495ed" size={55} />
  57.     </TouchableHighlight>
  58.      
  59.     );
  60.   }
  61.  
  62.   renderImages(){
  63.     return(
  64.       <View style={{flexDirection:'row'}} >
  65.       {this.state.responseImage.map( (imagem, index) => {
  66.         return(
  67.           <View key={imagem.path}>
  68.               <View>
  69.                   /**Deletar Imagem */
  70.                 <TouchableHighlight
  71.                   style={{marginHorizontal: 15}}
  72.                   underlayColor='#f8f8ff'
  73.                   activeOpacity = {0.3}
  74.                   onPress={() =>  {
  75.                     this.setState( {responseImage: this.responseArray.splice(index, index)})
  76.                   } }
  77.                 >
  78.                   <Icon name="ios-close" color="#6495ed" size={25} />
  79.                 </TouchableHighlight>
  80.    
  81.                 <Image
  82.                   style={{width: 100, height: 100, marginHorizontal: 5}}
  83.                   source={{uri: 'data:image/jpeg;base64,' + imagem.data}}
  84.                 />
  85.               </View>
  86.             </View>
  87.         );
  88.       })}
  89.       </View>
  90.     );
  91.   }
  92. [...]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement