2016-01-12 3 views
7

Ich mag die ganze Galerie von einem mobilen Gerät holen, sie in einem benutzerdefinierten Raster zu zeigen, ist es möglich? Im Moment bin ich mit $cordovaImagePicker, was ist mir in die Galerie Umleitung und dann nach der Bildauswahl Ich erhalte die Uri dieses Bildes. Stattdessen möchte ich die kompletten Bilder der Galerie uri auto ausgewählt haben.Wie alle Galeriebild von Mobile mit cordova holen?

Controller

$scope.getImageFromGallery = function() { 
    // Image picker will load images according to these settings 
    var options = { 
     maximumImagesCount: 1, // Max number of selected images, I'm using only one for this example 
     width: 800, 
     height: 800, 
     quality: 80 // Higher is better 
    }; 

    $cordovaImagePicker.getPictures(options).then(function(results) { 
     // Loop through acquired images 
     for (var i = 0; i < results.length; i++) { 
      alert(results); 
      $scope.image = results[i]; 
      // Print image URI 
     } 
    }, function(error) { 
     console.log('Error: ' + JSON.stringify(error)); // In case of error 
    }); 
} 
+0

ios? Android? beide? ja – jcesarmobile

+0

, für IOS und Android und Windows zu :) – mayank

+0

ähnliche offene Frage: http://stackoverflow.com/questions/28997384/cordova-phonegap-photo-browser – daserge

Antwort

4

der einfachste Weg, dies zu tun ist cordova-gallery-api Plugin zu verwenden, wie im folgenden Beispiel verweisen:

galleryAPI.getAlbums(function(items) 
{ 
    var html = ""; 

    for(var i = 0; i < items.length; i++) 
    { 
     var album = items[i]; 

     html += '<a href="javascript:loadAlbum(\'' + album.title + '\')" class="album"><span>' + escape(album.title) + '</span></a>'; 
    } 

    $content.innerHTML = html; 

}, function(error){alert(error);}); 

window.loadAlbum = function(albumName) 
{ 
    galleryAPI.getMedia(albumName, function(items) 
    { 
     var html = ""; 

     for(var i = 0; i < items.length; i++) 
     { 
      var media = items[i]; 

      html += '<a href="javascript:void()" class="media"><img src="file://' + media.thumbnail + '" /></a>'; 
     } 

     $content.innerHTML = html; 

    }, function(error){alert(error);}); 
}; 
1

this Plugin hinzufügen,

cordova plugin add https://github.com/wymsee/cordova-imagePicker.git 

-Controller

$scope.images = []; 
$scope.selectImages = function() { 
    $cordovaImagePicker.getPictures(
     function(results) { 
      for (var i = 0; i < results.length; i++) { 
       $scope.images.push(results[i]); 
      } 
      if (!$scope.$$phase) { 
       $scope.$apply(); 
      } 
     }, 
     function(error) { 
      console.log('Error: ' + error); 
     } 
    ); 
}; 

Html

<div class="row responsive-md"> 
    <div class="col col-25" ng-repeat="image in images"> 
     <img ng-src="{{image.src}}" width="100%" /> 
    </div> 
</div> 

Tutorial

Verwandte Themen