Swift-->从相册(摄像头)选择照片,图片选择

Swift-->从相册(摄像头)选择照片,图片选择,第1张

概述一个APP,选择照片是很常用的功能,作为Swift上路的菜鸟, 记录路上的点点滴滴. 看效果:(MAC 原生截图,真JB大…我还特意用了小屏幕的iPhone4s…还是很大….) 界面部分不好说, 文章不提了….有兴趣的加群讨论!!! 1:处理点击图片,d出选择对话框 //MARK: 轻触 图片控件extension ViewController { // MARK: 用于d出选择的对话

一个APP,选择照片是很常用的功能,作为Swift上路的菜鸟,记录路上的点点滴滴.

看效果:(MAC 原生截图,真JB大…我还特意用了小屏幕的iPhone4s…还是很大….)

界面部分不好说,文章不提了….有兴趣的加群讨论!!!

1:处理点击图片,d出选择对话框

//MARK: 轻触 图片控件extension VIEwController {    // MARK: 用于d出选择的对话框界面    var selectorController: UIAlertController {        let controller = UIAlertController(Title: nil,message: nil,preferredStyle: .ActionSheet)        controller.addAction(UIAlertAction(Title: "取消",style: .Cancel,handler: nil)) // 取消按钮        controller.addAction(UIAlertAction(Title: "拍照选择",style: .Default) { action in            self.selectorSourceType(.Camera)        }) // 拍照选择        controller.addAction(UIAlertAction(Title: "相册选择",style: .Default) { action in            self.selectorSourceType(.Photolibrary)        }) // 相册选择        return controller    }    // MARK: 轻触手势事件的回调    @IBAction func onTAPImageVIEw(sender: UITapGestureRecognizer) {        presentVIEwController(selectorController,animated: true,completion: nil)    }    func selectorSourceType(type: UIImagePickerControllerSourceType) {        imagePickerController.sourceType = type        // 打开图片选择器        presentVIEwController(imagePickerController,completion: nil)    }}

2:调用系统的图片选择界面

//MARK: 扩展图片选择和结果返回extension VIEwController: UIImagePickerControllerDelegate,UINavigationControllerDelegate {    // MARK: 图片选择器界面    var imagePickerController: UIImagePickerController {        get {            let imagePicket = UIImagePickerController()            imagePicket.delegate = self            imagePicket.sourceType = .Photolibrary            return imagePicket        }    }    // MARK: 当图片选择器选择了一张图片之后回调    func imagePickerController(picker: UIImagePickerController,dIDFinishPickingMediawithInfo info: [String: AnyObject]) {        dismissVIEwControllerAnimated(true,completion: nil) // 选中图片,关闭选择器...这里你也可以 picker.dismissVIEwControllerAnimated 这样调用...但是效果都是一样的...        imageVIEw.image = info[UIImagePickerControllerOriginalimage] as? UIImage // 显示图片        imageVIEw.contentMode = .ScaletoFill // 缩放显示,便于查看全部的图片    }    // MARK: 当点击图片选择器中的取消按钮时回调    func imagePickerControllerDIDCancel(picker: UIImagePickerController) {        picker.dismissVIEwControllerAnimated(true,completion: nil) // 效果一样的...    }}

3:VIEwController其他代码
此类非常简单,归功于Swift强大的扩展(extension)功能.

class VIEwController: UIVIEwController {    // 图片控件    @IBOutlet weak var imageVIEw: UIImageVIEw!    overrIDe func vIEwDIDLoad() {        super.vIEwDIDLoad()        // Do any additional setup after loading the vIEw,typically from a nib.        imageVIEw.userInteractionEnabled = true // 开启控件的交互 *** 作,否则轻触事件无法传递    }    overrIDe func dIDReceiveMemoryWarning() {        super.dIDReceiveMemoryWarning()        // dispose of any resources that can be recreated.    }}

源码: https://github.com/angcyo/ImagePickerDemo

细心的你,可能发现了上图中全TM是英文….嘿嘿!!!

你懂得…

至此: 文章就结束了,如有疑问: QQ群 AndroID:274306954 Swift:399799363 欢迎您的加入.

总结

以上是内存溢出为你收集整理的Swift-->从相册(摄像头)选择照片,图片选择全部内容,希望文章能够帮你解决Swift-->从相册(摄像头)选择照片,图片选择所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1073319.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-26
下一篇2022-05-26

发表评论

登录后才能评论

评论列表(0条)

    保存