-(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);
}
}
} /*我写了这段代码。问题是当我尝试拍摄多张照片时,它显示“收到内存警告”,并且我的应用程序崩溃了。在此我尝试计数图像,同时它也计数“相机未就绪模式”,以便我拍摄的图像保存多次。如何解决此问题?*/
发布于 2014-12-03 18:16:57
尝尝这个,
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是您想要拍摄的照片数量。
https://stackoverflow.com/questions/27268421
复制相似问题