2014-12-03 2 views
0
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
    if ([multipleCapture isOn]) 
    { 
     images=info[UIImagePickerControllerOriginalImage]; 
     currentDate=[NSDate date]; 
     myString=[dateFormatter stringFromDate:currentDate]; 
     customText=imagetext.text; 
     saveImage.dateTime=myString; 
     saveImage.imageName=info[UIImagePickerControllerOriginalImage]; 
     saveImage.customText=customText; 
     [imageArray addObject:saveImage]; 
     [imageArray sortUsingDescriptors:sortDescriptors]; 
     if ([imageArray count] == 1) 
     { 
      UIGraphicsBeginImageContext(images.size); 
      myString=[[imageArray objectAtIndex:0]valueForKey:@"dateTime"]; 
      [images drawInRect:CGRectMake(0, 0, images.size.width, images.size.height)]; 
      NSDictionary* attributes = @{NSFontAttributeName : [UIFontboldSystemFontOfSize:75],NSStrokeColorAttributeName :[UIColor blackColor],NSForegroundColorAttributeName : [UIColor yellowColor],NSStrokeWidthAttributeName : @-2.0}; 
      [myString drawAtPoint:CGPointMake(120,70)withAttributes:attributes]; 
      [customText drawAtPoint:CGPointMake(870, 70)withAttributes:attributes]; 
      newImage= UIGraphicsGetImageFromCurrentImageContext(); 
      UIGraphicsEndImageContext(); 
      UIImageWriteToSavedPhotosAlbum(newImage,self,@selector(savedPhotoImage:didFinishSavingWithError:contextInfo:), nil); 
     } 
    } 
}  

/* Я работал над этим кодом. Проблема в том, что когда я пытаюсь сделать несколько снимков, это показывает «Предупреждение о принимаемой памяти», и мое приложение разбилось. В этом я попытался подсчитать изображения, в то же время Он считает «Камера не готовой» также так, чтобы мои снимки сохранялись несколько раз. Как я могу решить эту проблему? */Камера множественного захвата изображения в iOS

ответ

0

Попробуйте это,

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<PhotoCount) 
{ 
    [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]; 
} 

} 

PhotoCount это количество фотографий, которые вы хотите взять.

+0

/* Я прошу о сохранении изображений одновременно при захвате нескольких изображений. В то время мы не знаем, сколько изображений мы возьмем? Также изображения должны иметь точное время съемки изображения на изображении. Сохранение процесса также работает в фоновом режиме. Вы можете мне помочь */ –

Смежные вопросы