在iPhone应用程序中录制视频/拍照切换?

时间:2010-08-11 06:35:08

标签: iphone objective-c video-capture image

所以我有一个iphone应用程序,这是一个按钮,当你按下它我希望相机视图弹出,我想让用户选择拍摄照片或视频,如在默认的相机应用程序中转换东西。

谢谢!

1 个答案:

答案 0 :(得分:0)

您正在寻找的是'UIImagePickerController'

-(void) getPhoto:(id) sender {
UIImagePickerController * picker = [[UIImagePickerController alloc] init];
picker.delegate = self;

if((UIButton *) sender == choosePhotoBtn) {
    picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
} else {
    picker.sourceType = UIImagePickerControllerSourceTypeCamera;
}

[self presentModalViewController:picker animated:YES];
}

当你按下按钮时,这个方法会被调用,我在这里做的是我有两个按钮,selectPhotoBtn和takePhotoBtn,这两个按钮链接到同一个方法。

如果按下的按钮(发件人)是choosePhotoBtn,则将UIImagePickerControllerSourceTypeSavedPhotosAlbum设置为UIImagePickerController的源类型。

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[picker dismissModalViewControllerAnimated:YES];
bannerImage.image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
}

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
[picker dismissModalViewControllerAnimated:YES];
}

这两种方法是委托方法。当解除持有UIImagePickerController的modelViewController时,它们会被调用。

我会推荐这个网站,因为它有一个关于如何使用这些功能的精彩教程。

http://icodeblog.com/2009/07/28/getting-images-from-the-iphone-photo-library-or-camera-using-uiimagepickercontroller/

这是我学习如何使用这些类的地方,看起来该网站目前已经对它进行了wordpress注释攻击,而firefox正在阻止它,但是如果你可以访问该页面。它是一个很好的资源。