swift調用相機和相冊


簡單實現swift調用相機和相冊的功能,分享代碼與學習swift的童鞋共同進步

import UIKit

 

class ViewController: UIViewController,UIImagePickerControllerDelegate,UINavigationControllerDelegate{

 

    var imgView = UIImageView()

 

    var img = UIImage()

 

    override func viewDidLoad() {

 

        super.viewDidLoad()

 

        // Do any additional setup after loading the view, typically from a nib.

 

        var btn = UIButton()

 

        btn.frame = CGRectMake(50, 120, 200, 40)

 

        btn.backgroundColor = UIColor.orangeColor()

 

        btn.addTarget(self, action: "goCamera", forControlEvents: UIControlEvents.TouchUpInside)

 

        self.view.addSubview(btn)

 

        

 

        var btn1 = UIButton()

 

        btn1.frame = CGRectMake(50, 200, 200, 40)

 

        btn1.backgroundColor = UIColor.redColor()

 

        btn1.addTarget(self, action: "goImage", forControlEvents: UIControlEvents.TouchUpInside)

 

        self.view.addSubview(btn1)

 

        

 

        imgView.frame = CGRectMake(100, 260, 100, 100)

 

        self.view.addSubview(imgView)

 

    }

 

 

 

    override func didReceiveMemoryWarning() {

 

        super.didReceiveMemoryWarning()

 

        // Dispose of any resources that can be recreated.

 

    }

 

    

 

    //打開相機

 

    func goCamera(){

 

        //先設定sourceType為相機,然后判斷相機是否可用(ipod)沒相機,不可用將sourceType設定為相片庫

 

        var sourceType = UIImagePickerControllerSourceType.Camera

 

        if !UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.Camera){

 

            sourceType = UIImagePickerControllerSourceType.PhotoLibrary

 

        }

 

        var picker = UIImagePickerController()

 

        picker.delegate = self

 

        picker.allowsEditing = true//設置可編輯

 

        picker.sourceType = sourceType

 

        self.presentViewController(picker, animated: true, completion: nil)//進入照相界面

 

    }

 

    

 

    func goImage(){

 

        var pickerImage = UIImagePickerController()

 

        if !UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.PhotoLibrary){

 

            pickerImage.sourceType = UIImagePickerControllerSourceType.PhotoLibrary

 

            pickerImage.mediaTypes = UIImagePickerController.availableMediaTypesForSourceType(pickerImage.sourceType)!

 

        }

 

        pickerImage.delegate = self

 

        pickerImage.allowsEditing = true

 

        self.presentViewController(pickerImage, animated: true, completion: nil)

 

    }

 

    //選擇好照片后choose后執行的方法

 

    func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]){

 

        println("choose--------->>")

 

        println(info)

 

        img = info[UIImagePickerControllerEditedImage] as UIImage

 

        imgView.image = img

 

        picker.dismissViewControllerAnimated(true, completion: nil)

 

    }

 

    //cancel后執行的方法

 

    func imagePickerControllerDidCancel(picker: UIImagePickerController){

 

        println("cancel--------->>")

 

        picker.dismissViewControllerAnimated(true, completion: nil)

 

    }

 

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM