2015-10-15 6 views
18

Ich kann das react-native-camera Modul auf die Kamera zugreifen und ein Bild speichern. Ich kann jedoch nicht herausfinden, wie dieses Bild dem Benutzer angezeigt wird.Wie benutze ich ein aufgenommenes Bild mit read-native-Kamera

Was ich versuche:

Hier nehme ich das Bild. Dies erzeugt, was eine .jpg Datei in assets-library://....

_takePicture() { 
     var self = this; 
     this.refs.cam.capture(function(err, data) { 
      this.setState({photo: data}); 
      console.log(err, data); 
      // data is "assets-library://asset/asset.JPG?id=########-####-####-####-##########&ext=JPG" 
      console.log('just took a picture'); 
     }); 
    } 

jedoch sein aussieht, wenn ich versuche, das Bild zu machen:

render: function() { 
     return(
     <Image style={styles.image} source={{uri: this.state.photo}}/> 
    ); 
    } 

ich diesen Fehler:

No suitable image URL loader found for assets-library://asset/asset.JPG?id=.......

Wie kann ich ein Foto machen, es in der aktuellen state meiner Anwendung speichern und es rendern?

Antwort

26

Die Lösung war die save to disk option gegenüber dem Speichern zu Camera Option zu aktivieren:

<Camera 
    captureTarget={Camera.constants.CaptureTarget.disk} 
    // Rest of Camera options here 
/> 
0

So war ich für einige Zeit die @YPCrumble Antwort verwenden.

Aber jetzt muss ich das Bild in meiner Kamerarolle speichern.

Wenn jemand weiterhin in der Kamerarolle speichern möchte, müssen Sie die RTCCameraRoll-Bibliothek manuell verknüpfen.

Dokumentation Link Library hier:

https://facebook.github.io/react-native/docs/linking-libraries-ios.html#manual-linking

Es ist so einfach:

You can find the RCTImage.xcodeproj in your node_modules/react-native/Libraries/CameraRoll

Drag and drop this file inside Libraries folder in your XCode project.

After that, click in your main project, and find in the right pane "Build Phases".

Inside "Link Binary With Libraries", drag and drop the file called "libRCTCameraRoll.a" from left pane -> Libraries -> RTCCameraRoll.xcodeproj -> Products

Verwandte Themen