2012-08-04 65 views
1

基本上,通过使用相机应用程序自定义覆盖图,我想要拍摄多个图像(在我的情况下为5),只需按下一次“捕捉”按钮即可。单击'按钮按下'后用相机捕捉多张图像?

据我所知,下面的代码:正在采取

- (void)takePicture:(id)sender 
{ 
    self.pictureButton.enabled = NO; 
    [self.delegate takePicture]; 
} 

结果在单个图像中。有一种方法可以在按下一次按钮后将此动作复制5次?实际上,这会在Camera +应用程序中实现“爆发”效果。

+2

您可以使用重复设置为YES的NSTimer来触发UIImagePickerController的takePicture方法。 – 2012-08-04 05:50:43

回答

7

试试这个代码它从相机拍摄5张照片并存储在一个数组中。根据需要使用。

int counter; 
NSMutableArray * imageArray; 

-(void)takePicture 
{ 
     counter=0; 
     UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init]; 
[imagePicker setSourceType:UIImagePickerControllerSourceTypeCamera]; 
[imagePicker setDelegate:self]; 
[self presentModalViewController:imagePicker animated:YES]; 
[imagePicker release]; 
} 

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
UIImage *image= [info objectForKey:UIImagePickerControllerEditedImage]; 

[imageArray addObject:image]; 
counter++; 
if (counter<5) 
{ 
    [self dismissModalViewControllerAnimated:NO]; 
    UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init]; 
    [imagePicker setSourceType:UIImagePickerControllerSourceTypeCamera]; 
    [imagePicker setDelegate:self]; 
    [self presentModalViewController:imagePicker animated:NO]; 
    [imagePicker release]; 
} 
else 
{ 
    [self dismissModalViewControllerAnimated:YES]; 
} 

} 
+3

kya setting lagaya hai老板!!! – HarshIT 2013-07-19 10:21:27

+0

这不适用于ios 8 – bader 2016-01-14 00:32:54