如何在iphone中从本机应用程序打开摄像头?

如何在iphone中从本机应用程序打开摄像头?,iphone,objective-c,xcode,image,editing,Iphone,Objective C,Xcode,Image,Editing,我想写一个应用程序,在其中我打开相机拍摄一张照片,然后编辑照片。我还想对图像应用一些很酷的效果。比如图像编辑……有人知道实现这一点的好方法吗 我想知道创建类似aap的图像编辑是否需要OpenGL?看看这个类。它是一个视图控制器,你可以用它来显示,它可以让你使用iPhone的本机界面从相机中“拾取”一张照片。这真的很容易。您的代码将位于UIViewController的子类中,让该类符合UIImagePickerControllerDelegate协议,这允许您的控制器从相机和/或用户库接收图像

我想写一个应用程序,在其中我打开相机拍摄一张照片,然后编辑照片。我还想对图像应用一些很酷的效果。比如图像编辑……有人知道实现这一点的好方法吗


我想知道创建类似aap的图像编辑是否需要OpenGL?

看看这个类。它是一个视图控制器,你可以用它来显示,它可以让你使用iPhone的本机界面从相机中“拾取”一张照片。

这真的很容易。您的代码将位于
UIViewController
的子类中,让该类符合
UIImagePickerControllerDelegate
协议,这允许您的控制器从相机和/或用户库接收图像

现在,您必须创建并显示一个
UIImagePickerController
,该视图控制器可用于从用户库中选择图像和使用相机拍摄图像/视频。实现如下内容:

-(IBAction)takePictureWithCamera {
  UIImagePickerController* controller = [[UIImagePickerController alloc] init];
  controller.delegate = self;
  [self presentModalViewController:controller animated:YES];
  [controller release];
}
这将显示图像选择器,请参阅
UIImagePickerController
的文档,了解如何在需要时进一步自定义

接下来,您需要接收用户拾取的图像,或使用相机拍摄的图像。这是通过从
UIImagePickerController
协议实现方法
imagePickerController:didFinishPickingMediaWithInfo:

-(void)imagePickerController:(UIImagePickerController*)picker
    didFinishPickingMediaWithInfo:(NSDictionary*)info {
  UIImage* image = [info objectForKey: UIImagePickerControllerOriginalImage];
  // Do stuff to image.
}
就这样