Swift 3 实现拍照功能
来源:互联网 发布:儿童 编程培训 编辑:程序博客网 时间:2024/05/01 00:41
编辑.plist文件,添加两个key-value,打开相机和相册的访问权限
1) 申请相机权限:
2) 申请相册权限
在xcode中拖一个UIImageview 控件
继承下面两个类
实现方法:
1. 拍照按钮实现:
2. 保存相册
3. 实现以下两个开启相机和选中图片的回调函数
最后如果希望转换成base64,可以使用以下函数
1) 申请相机权限:
<key>NSCameraUsageDescription</key><string>This app will use camera.</string>
2) 申请相册权限
<key>NSPhotoLibraryUsageDescription</key><string>You can select photos to attach to reports.</string>
在xcode中拖一个UIImageview 控件
继承下面两个类
UINavigationControllerDelegate
UIImagePickerControllerDelegate
实现方法:
class yourController:..., UINavigationControllerDelegate, UIImagePickerControllerDelegate {...}
1. 拍照按钮实现:
@IBAction func your_take_photo_action(_ sender: UIButton) { imagePicker = UIImagePickerController() imagePicker.delegate = self imagePicker.sourceType = .camera present(imagePicker, animated: true, completion: nil) }
2. 保存相册
@IBAction func save(_ sender: AnyObject) { UIImageWriteToSavedPhotosAlbum(imageTake.image!, self, #selector(image(_:didFinishSavingWithError:contextInfo:)), nil) }
3. 实现以下两个开启相机和选中图片的回调函数
func image(_ image: UIImage, didFinishSavingWithError error: Error?, contextInfo: UnsafeRawPointer) { if let error = error { // we got back an error! let ac = UIAlertController(title: "Save error", message: error.localizedDescription, preferredStyle: .alert) ac.addAction(UIAlertAction(title: "OK", style: .default)) present(ac, animated: true) } else { let ac = UIAlertController(title: "Saved!", message: "Your altered image has been saved to your photos.", preferredStyle: .alert) ac.addAction(UIAlertAction(title: "OK", style: .default)) present(ac, animated: true) } } //MARK: - Done image capture here func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) { imagePicker.dismiss(animated: true, completion: nil) imageTake.image = info[UIImagePickerControllerOriginalImage] as? UIImage }
最后如果希望转换成base64,可以使用以下函数
func UIImgToBase64(img:UIImage) ->String{ let imageData:NSData = UIImagePNGRepresentation(img)! as NSData let strBase64 = imageData.base64EncodedString(options: .lineLength64Characters) return strBase64 }
阅读全文
1 0
- Swift 3 实现拍照功能
- Android实现拍照功能。
- 拍照功能的实现
- iOS 实现拍照功能
- Android 实现拍照功能
- ionic拍照功能实现
- 拍照功能实现
- Android 实现拍照功能
- WINCE 拍照功能的实现
- 实现android 手机拍照功能
- android 实现定时拍照功能
- android 实现定时拍照功能
- Android - 实现拍照,录像功能
- Android--拍照功能的实现
- H5实现拍照上传功能
- Swift 3实现简单条形码功能
- 实现手机App实现拍照功能
- java利用jmf实现拍照功能
- Linux编程:Valgrind在调试中的使用
- windows IO 设备以及打开
- Android SystemProperties设置/取得系统属性
- window安装mysql 5.7解压版
- 关于Git无法提交 index.lock的解决办法
- Swift 3 实现拍照功能
- 移植vim到ARM开发板
- TCP UDP
- Java创建WebService服务端
- 数据挖掘与预测分析------数据预处理
- POJ 2312 Battle City 笔记
- 第十七章 再论"没有银弹"
- MapReduce工作原理
- 玩下linux中的的poll函数------可以用任何描述符号fd而不限于网络socket