iOS相機管理


相機簡介

相機是移動裝置的共同特點之一,我們能夠使用相機拍攝圖片,並在應用程式裡呼叫它,而且相機的使用很簡單。

例項步驟

1、建立一個簡單的View based application

2、在ViewController.xib中新增一個button (按鈕),併為該按鈕建立IBAction

3、新增一個 image view (影象檢視),並建立一個名為imageView的IBOutlet

4、ViewController.h檔案程式碼如下所示:

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController<UIImagePickerControllerDelegate>
{   
   UIImagePickerController *imagePicker;
   IBOutlet UIImageView *imageView;    
}
- (IBAction)showCamera:(id)sender;

@end

5、修改ViewController.m,如下所示:

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];    
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (IBAction)showCamera:(id)sender {
    imagePicker.allowsEditing = YES;
    if ([UIImagePickerController isSourceTypeAvailable:
        UIImagePickerControllerSourceTypeCamera])
    {
        imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
    }
    else{
        imagePicker.sourceType = 
        UIImagePickerControllerSourceTypePhotoLibrary;
    }
    [self presentModalViewController:imagePicker animated:YES];

}
-(void)imagePickerController:(UIImagePickerController *)picker 
  didFinishPickingMediaWithInfo:(NSDictionary *)info{
    UIImage *image = [info objectForKey:UIImagePickerControllerEditedImage];
    if (image == nil) {    
        image = [info objectForKey:UIImagePickerControllerOriginalImage];
    }
    imageView.image = image;
    
}

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

@end

輸出

執行該應用程式並單擊顯示相機按鈕時,我們就會獲得下面的輸出

camera_Output1

只要拍照之後,就可以通過移動和縮放對圖片進行編輯,如下所示。

camera_Output2