目录
#AACameraView
##描述
AACameraView
是一个轻量级、易于使用且可定制的相机视图框架,用 Swift 编写。它使用 AVFoundation
框架并使用基本选项构建相机视图。
##演示
您可以使用 Storyboard 中的简单 UIView
来创建 AACameraView
。
要运行示例项目,请克隆仓库,然后首先从 Example 目录运行 pod install
。
##要求
- iOS 8.0+
- Xcode 8.0+
- Swift 3+
安装
AACameraView
可以使用 CocoaPods、Carthage 或手动安装。
##CocoaPods
AACameraView
通过 CocoaPods 提供。要安装 CocoaPods,运行
$ gem install cocoapods
然后创建一个包含以下内容的 Podfile
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
target '<Your Target Name>' do
// Swift 3.2+ Compatibility
pod 'AACameraView'
// Swift 4 Compatibility
pod 'AACameraView', '~> 1.1'
end
最后,运行以下命令来安装
$ pod install
##Carthage
要安装 Carthage,运行(使用 Homebrew)
$ brew update
$ brew install carthage
然后在 Cartfile 中添加以下行
github "EngrAhsanAli/AACameraView" "master"
然后导入您所有使用此库的文件中
import AACameraView
##手动安装
如果您不希望使用上述任何依赖管理器,可以手动将 AACameraView
集成到您的项目中,方法是将 Classes 目录中的文件添加到您的项目中。
开始
##创建相机视图对象
从 对象库 中拖拽 UIView
对象到你的 UIViewController
在故事板上。
##将视图对象设置为相机视图
在 身份检查器 中将视图的类设置为 AACameraView
。确保模块属性也设置为 AACameraView
。
##设置属性和使用方法
以下是 AACameraView
的基本使用方法和声明。
使用方法:
// IBOutlet for AACameraView
@IBOutlet weak var cameraView: AACameraView!
// Start capture session in viewWillAppear
override func viewWillAppear(_ animated: Bool) {
cameraView.startSession()
}
// Stop capture session in viewWillDisappear
override func viewWillDisappear(_ animated: Bool) {
cameraView.stopSession()
}
// Get response!
cameraView.response = { response in
if let url = response as? URL {
// Recorded video URL here
}
else if let img = response as? UIImage {
// Capture image here
}
else if let error = response as? Error {
// Handle error if any!
}
}
##带有描述的属性
您可以为 AACameraView
使用以下属性
属性 | 类型 | 描述 |
---|---|---|
zoomEnabled |
布尔 |
在 AACameraView 中启用手势缩放 |
focusEnabled |
布尔 |
在 AACameraView 中启用手势对焦 |
cameraPosition |
AVCaptureDevicePosition |
相机设备位置:前 、后 |
flashMode |
AVCaptureFlashMode |
闪光灯模式:开启 、关闭 、自动 |
outputMode |
OUTPUT_MODE |
相机模式:图像 、视频音频 、视频 |
quality |
OUTPUT_QUALITY |
相机质量:低 、中 、高 |
recordedDuration |
CMTime |
录制视频时间 |
recordedFileSize |
Int64 |
录制视频大小 |
hasFlash |
布尔 |
检查是否有闪光灯设备 |
hasFrontCamera |
布尔 |
检查是否存在前置摄像头设备 |
status |
AVAuthorizationStatus |
相机设备授权:授权 |
##带有描述的方法
您可以为 AACameraView
使用以下方法。
方法 | 描述 |
---|---|
startSession |
启动 AACameraView 的捕获会话 |
stopSession |
停止 AACameraView 的捕获会话 |
startVideoRecording |
开始视频录制 |
stopVideoRecording |
停止视频录制(响应回调) |
captureImage |
捕获图像(响应回调) |
toggleCamera |
切换摄像头设备:前 、后 |
toggleMode |
切换相机模式:图像 、视频音频 |
toggleFlash |
切换闪光灯:开启 、关闭 |
triggerCamera |
触发相机(响应回调) |
requestAuthorization |
请求相机访问 |
注意,响应回调将在触发
triggerCamera
、captureImage
和stopVideoRecording
方法时获取数据。
#贡献与许可证
AACameraView
在 MIT 许可证下可用。有关更多信息,请参阅 LICENSE 文件。
欢迎提交拉取请求!最好的贡献将是替换或配置在典型应用生命周期中阻止主线程的已知类/方法。
如果您在您的应用中使用 AACameraView
,请通过电子邮件告知 Ahsan Ali 工程师