首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用我的iPhone应用程序拍照?

如何使用我的iPhone应用程序拍照?
EN

Stack Overflow用户
提问于 2008-09-23 20:05:35
回答 4查看 37.4K关注 0票数 18

我正在用Cocoa在xcode中编写一个iPhone应用程序。我找不到任何教程或示例代码来展示如何使用内置相机拍照。我该怎么做呢?我在哪里可以找到好的信息?

谢谢!

EN

回答 4

Stack Overflow用户

发布于 2008-09-24 13:35:03

使用UIImagePickerController。这里有一个很好的教程。

http://www.zimbio.com/iPhone/articles/1109/Picking+Images+iPhone+SDK+UIImagePickerController

您应该将源类型设置为UIImagePickerControllerSourceTypeCameraUIImagePickerControllerSourceTypePhotoLibrary。请注意,这两种类型在屏幕上的显示截然不同。您应该仔细测试这两种方法。特别是,如果您将UIImagePickerController嵌套在UINavigationController中,如果您不小心,您可能会得到多个导航栏和其他奇怪的效果。

另请参阅this thread

票数 11
EN

Stack Overflow用户

发布于 2008-09-23 20:17:23

UIImagePickerController类允许您拍摄照片或从照片库中选择照片。将源类型指定为UIImagePickerControllerSourceTypeCamera

另请参阅之前提出的问题:Access the camera with iPhone SDK

票数 4
EN

Stack Overflow用户

发布于 2014-02-25 20:15:52

@WQS发布的答案运行良好,但包含一些iOS 6中已弃用的方法。以下是iOS 6及以上版本的更新答案:

代码语言:javascript
复制
-(void)takePhoto
{
    UIImagePickerController *imagePickerController = [[UIImagePickerController alloc] init];

    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
    {
        [imagePickerController setSourceType:UIImagePickerControllerSourceTypeCamera];
    }

    // image picker needs a delegate,
    [imagePickerController setDelegate:self];

    // Place image picker on the screen
    [self presentViewController:imagePickerController animated:YES completion:nil];
}



-(void)chooseFromLibrary
{

    UIImagePickerController *imagePickerController= [[UIImagePickerController alloc]init];
    [imagePickerController setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];

    // image picker needs a delegate so we can respond to its messages
    [imagePickerController setDelegate:self];

    // Place image picker on the screen
    [self presentViewController:imagePickerController animated:YES completion:nil];

}

//delegate methode will be called after picking photo either from camera or library
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    [self dismissViewControllerAnimated:YES completion:nil];
    UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];

[myImageView setImage:image];    // "myImageView" name of any UImageView.
}

不要忘记在您的view controller.h中添加以下内容:

代码语言:javascript
复制
@interface myVC<UINavigationControllerDelegate, UIImagePickerControllerDelegate>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/123503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档