swift中UIImagePickerController的使用(摄像)
来源:互联网 发布:淘宝服务.com 编辑:程序博客网 时间:2024/05/17 02:50
https://github.com/potato512/SYSwiftLearning
效果图
关键代码
var cameraPicker:UIImagePickerController! = nil
// MARK: 摄像func videoShow(){ /* 使用如下属性时,注意添加framework:MobileCoreServices KUTTypeImage 包含 const CFStringRef kUTTypeImage ;抽象的图片类型 const CFStringRef kUTTypeJPEG ; const CFStringRef kUTTypeJPEG2000 ; const CFStringRef kUTTypeTIFF ; const CFStringRef kUTTypePICT ; const CFStringRef kUTTypeGIF ; const CFStringRef kUTTypePNG ; const CFStringRef kUTTypeQuickTimeImage ; const CFStringRef kUTTypeAppleICNS const CFStringRef kUTTypeBMP; const CFStringRef kUTTypeICO; KUTTypeMovie 包含: const CFStringRef kUTTypeAudiovisualContent ;抽象的声音视频 const CFStringRef kUTTypeMovie ;抽象的媒体格式(声音和视频) const CFStringRef kUTTypeVideo ;只有视频没有声音 const CFStringRef kUTTypeAudio ;只有声音没有视频 const CFStringRef kUTTypeQuickTimeMovie ; const CFStringRef kUTTypeMPEG ; const CFStringRef kUTTypeMPEG4 ; const CFStringRef kUTTypeMP3 ; const CFStringRef kUTTypeMPEG4Audio ; const CFStringRef kUTTypeAppleProtectedMPEG4Audio; */ // 获得相机模式下支持的媒体类型 let availableMediaTypes:Array = UIImagePickerController.availableMediaTypesForSourceType(.Camera)! var canTakeVideo = false for mediaType in availableMediaTypes { if mediaType == (kUTTypeImage as String) { // 支持摄像 canTakeVideo = true break; } } // 检查是否支持摄像 if (!canTakeVideo) { print("sorry, capturing video is not supported.!!!"); return; } // 创建图像选取控制器 let videoPicker = UIImagePickerController() // 设置图像选取控制器的来源模式为相机模式 videoPicker.sourceType = UIImagePickerControllerSourceType.Camera // 设置图像选取控制器的类型为动态图像,即视频文件 videoPicker.mediaTypes = [kUTTypeMovie as String] // 设置摄像图像品质 videoPicker.videoQuality = UIImagePickerControllerQualityType.TypeHigh // 设置最长摄像时间 videoPicker.videoMaximumDuration = 30 // 允许用户进行编辑 videoPicker.allowsEditing = false // 设置委托对象 videoPicker.delegate = self // 以模式视图控制器的形式显示 self.presentViewController(videoPicker, animated: true, completion: nil)}
// MARK: UIImagePickerControllerDelegate, UINavigationControllerDelegatefunc imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) { print("1 图片选择:\(info)") // 录像 // 获取媒体类型 let mediaType = info[UIImagePickerControllerMediaType] as! String // 判断是静态图像还是视频 if mediaType == (kUTTypeImage as String) { } else if mediaType == (kUTTypeMovie as String) { // 获取视频文件的url let mediaURL = info[UIImagePickerControllerMediaURL] as! NSURL // 视频文件的地址 let pathString = mediaURL.relativePath print("视频地址:\(pathString)") // 创建ALAssetsLibrary对象并将视频保存到媒体库(注意添加frame:AssetsLibrary) let assetsLibrary = ALAssetsLibrary() assetsLibrary.writeVideoAtPathToSavedPhotosAlbum(mediaURL, completionBlock: { (assetURL:NSURL!, error:NSError!) -> Void in if let errorTmp = error { print("保存失败:\(errorTmp)"); } else { print("保存成功"); } }) } // 退出图片选择控制器 picker.dismissViewControllerAnimated(true, completion: nil)} func imagePickerControllerDidCancel(picker: UIImagePickerController) { print("2 放弃图片选择") // 退出图片选择控制器 picker.dismissViewControllerAnimated(true, completion: nil)}
0 0
- swift中UIImagePickerController的使用(摄像)
- swift中UIImagePickerController的使用(相机)
- swift中UIImagePickerController的使用(相册、图库)
- iOS swift中UIImagePickerController的使用(didFinishPickingMediaWithInfo)判断是录像还是照片
- 在Swift使用UIImagePickerController
- Swift - 从相册中选择照片并上传(使用UIImagePickerController)
- UIImagePickerController拍照与摄像
- UIImagePickerController拍照与摄像
- UIImagePickerController拍照与摄像
- UIImagePickerController拍照与摄像
- UIImagePickerController拍照与摄像
- UIImagePickerController拍照与摄像
- UIImagePickerController拍照与摄像
- UIImagePickerController拍照与摄像
- UIImagePickerController拍照与摄像
- UIImagePickerController拍照与摄像
- UIImagePickerController拍照与摄像
- UIImagePickerController拍照与摄像
- 将dev gridview中数据原样导出到EXCEL
- adb shell pm list packages: 列出所有的包名
- qq客服,调用qq聊天
- 对于按成本组件结构(要素)还原
- Apache 2.4(一)下载、安装配置与卸载
- swift中UIImagePickerController的使用(摄像)
- 链表的建立和简单操作(删除偶数项后逆序):)
- 【BZOJ】4413: [Usaco2016 Feb]Milk Pails bool型dp
- MVC入门
- C# List<T>转为Json数据
- Apache之使用fileupload实现文件上传
- 出现xhr.sendasbinary is not a function错误
- 深入理解C语言之extern
- JAVA构造方法和匿名对象