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)

 

    }

 

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值