2016-03-24 10 views
0

Ich benutze UITabBarController in meiner Anwendung.Lassen sagen Umfrageformular mit Schritten, so dass jedes TabItem step.At Schritt 3 (Tab 3) gibt es eine Anlage, die Foto-Upload mit UIImagePickerController ist so was.Arbeiten mit Alamofire zum Hochladen von Bildern mit UIImagePickerController

import UIKit 

class AttachmentViewController: UIViewController, UICollectionViewDataSource, UICollectionViewDelegate, UIImagePickerControllerDelegate, UINavigationControllerDelegate{ 

@IBOutlet weak var photoCollectionView: UICollectionView! 

var photo = [Photo]() 

//..... Collection View Delegate and Datasource for displaying images 

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) { 
    var newImage: UIImage 

    if let possibleImage = info["UIImagePickerControllerEditedImage"] as? UIImage { 
     newImage = possibleImage 
    } else if let possibleImage = info["UIImagePickerControllerOriginalImage"] as? UIImage { 
     newImage = possibleImage 
    } else { 
     return 
    } 

    let imageName = NSUUID().UUIDString 
    let imagePath = getDocumentsDirectory().stringByAppendingPathComponent(imageName) 

    if let jpegData = UIImageJPEGRepresentation(newImage, 80) { 
     jpegData.writeToFile(imagePath, atomically: true) 
    } 

    let finalPhoto = Photo(image: imageName) 
    photo.append(finalPhoto) 
    photoCollectionView.reloadData() 

    dismissViewControllerAnimated(true, completion: nil) 
} 

Das Problem ist, ich weiß nicht, wie Bild mit Bytes in swift.I mit Alamofire hochladen kann jetzt das Bild bekommen, ich weiß nur nicht, wie es alamofire mit hochladen.

Antwort

0

zu base64 String konvertieren und laden

let image : UIImage = UIImage("your image") 
      let imageData = UIImageJPEGRepresentation(image, 0.1) 
      base64String = imageData!.base64EncodedStringWithOptions([]) 
Verwandte Themen