【发布时间】:2012-03-03 12:25:40
【问题描述】:
我想在应用启动时启动 iPad 的前置摄像头。
如何以编程方式进行?
请告诉我。
【问题讨论】:
-
您是否为查看 Apple 的 API 文档而烦恼?
标签: objective-c ios cocoa-touch ipad ios5
我想在应用启动时启动 iPad 的前置摄像头。
如何以编程方式进行?
请告诉我。
【问题讨论】:
标签: objective-c ios cocoa-touch ipad ios5
您需要做的第一件事是检测您的设备是否有前置摄像头。为此,您需要遍历视频设备。
试试UIImagePickerController这个方法:
+ (BOOL)isCameraDeviceAvailable:(UIImagePickerControllerCameraDevice)cameraDevice
这是一个类方法,UIImagePickerControllerCameraDevice 可以取两个值:
- UIImagePickerControllerCameraDeviceRear
- UIImagePickerControllerCameraDeviceFront
示例代码:
if( [UIImagePickerController isCameraDeviceAvailable: UIImagePickerControllerCameraDeviceFront ])
{
// do something
}
请注意,这适用于 iOS 4.0 及更高版本。
我也不确定是否有任何 API 可以预先启动前置摄像头。相机似乎总是以用户上次使用时离开的相同模式启动。也许苹果设计上没有公开任何 API 来改变这一点。也许苹果希望用户就此打个电话。
不过,您至少可以检测到 Fron Camera 的可用性并提供您的功能。
【讨论】:
如果我正确理解了您的问题,您所要做的就是打开您的相机使其处于前置模式而不是后置模式,因此请在您第一次调用选取器的方法中写入以下内容:
picker.cameraDevice=UIImagePickerControllerCameraDeviceFront;
希望这能回答你的问题。
【讨论】: