我想制作一个相机应用程序,我想自动启动前置摄像头并在没有用户交互的情况下捕获图像。提前致谢。
答案 0 :(得分:1)
UIImagePickerController
是相机的更高级别的抽象。查看AVFoundation示例,了解如何更直接地使用相机。
AVFoundation的文档是here。
要在仍然使用选择器的情况下执行此操作,请查看。1317978。使用UIGetScreenImage()
查看一些示例。它曾经是一个私有API,但我认为它现在已被允许。
您可能还想查看一些有关自定义叠加层的示例,例如this one。
答案 1 :(得分:1)
除了Robin的回答,添加以下语句(在presentModalViewController :)之前,以确保如果设备有前置摄像头,默认情况下应该打开
if([UIImagePickerController isCameraDeviceAvailable:UIImagePickerControllerCameraDeviceFront]){
self.imagePicker.sourceType=UIImagePickerControllerSourceTypeCamera; //skipping this was crashing my app with some ** Assertion failure.
picker.cameraDevice = UIImagePickerControllerCameraDeviceFront;
}
请注意,如果您的应用与运行早于4.0的操作系统的设备兼容,则必须进行条件检查,因为cameraDevice属性仅在iOS 4.0及更高版本中可用
答案 2 :(得分:0)
我不知道你对Objective-c或iphone开发有多了解。
所以我将告诉你如何在你的iPhone应用程序中拍照。
首先,您应该使用UIImagePickerController类
以下是苹果公司的一些例子 http://developer.apple.com/library/ios/samplecode/PhotoLocations/
http://developer.apple.com/library/ios/samplecode/PrintPhoto/
http://developer.apple.com/library/ios/samplecode/PhotoPicker/
http://developer.apple.com/library/ios/samplecode/iPhoneCoreDataRecipes/
接下来是代码,如果您只是将它放在.m文件中,它将帮助您拍摄照片
- (void)selectPhotos
{
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
picker.delegate = self;
[self presentModalViewController:picker animated:YES];
[picker release];
}
- (void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingImage:(UIImage *)image
editingInfo:(NSDictionary *)editingInfo
{
imageView.image = image;
[[picker parentViewController] dismissModalViewControllerAnimated:YES];
}
现在开始了。