Iphone 将拾取的图像从一个视图传输到另一个视图时出现内存警告
我打开相机,点击按钮,在uiimage中拍摄图像,然后将uiimage传输到其他视图 但当我这样做4-5次时,我会收到内存警告 以下是我工作的代码:-Iphone 将拾取的图像从一个视图传输到另一个视图时出现内存警告,iphone,ios,uiimagepickercontroller,Iphone,Ios,Uiimagepickercontroller,我打开相机,点击按钮,在uiimage中拍摄图像,然后将uiimage传输到其他视图 但当我这样做4-5次时,我会收到内存警告 以下是我工作的代码:- -(void)imagePickerController:(UIImagePickerController*)picker_camera didFinishPickingMediaWithInfo:(NSDictionary*)info { [picker_camera dismissModalViewControllerAnimated
-(void)imagePickerController:(UIImagePickerController*)picker_camera didFinishPickingMediaWithInfo:(NSDictionary*)info
{
[picker_camera dismissModalViewControllerAnimated:YES];
UIImage *image=[[UIImage alloc] init];
image=[info objectForKey:@"UIImagePickerControllerOriginalImage"];
[self Methodcall:image];
//Image_camera=image;
// NSAutoreleasePool *apool = [[NSAutoreleasePool alloc] init];
//printf("first\n");
// [self performSelector:@selector(Methodcall) withObject:nil afterDelay:1];
//printf("ok\n");
//[apool release];
}
-(void)Methodcall:(UIImage *)image{
ImageDisplayViewController *ImageDisplayViewController_obj=[[ImageDisplayViewController alloc] initWithNibName:@"ImageDisplayViewController" bundle:nil];
ImageDisplayViewController_obj.image_FRomCamera=image;
NSLog(@"image===>%@ camera==>%@",image,ImageDisplayViewController_obj.image_FRomCamera);
[self.navigationController pushViewController:ImageDisplayViewController_obj animated:YES];
// [ImageDisplayViewController_obj release];
}
-(IBAction)TakePhotoCamera:(id)sender{
@try
{
UIImagePickerController *picker_camera = [[UIImagePickerController alloc] init];
picker_camera.sourceType = UIImagePickerControllerSourceTypeCamera;
picker_camera.delegate = self;
[self presentModalViewController:picker_camera animated:YES];
[picker_camera release];
}
@catch (NSException *exception)
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"No Camera" message:@"Camera is not available " delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil];
[alert show];
[alert release];
}
}
有人帮我吗
提前谢谢。我想您没有使用ARC(有什么特别的原因吗?)
- 首先,您正在分配一个从未使用过的UIImage实例:
应改为:UIImage *image=[[UIImage alloc] init]; image=[info objectForKey:@"UIImagePickerControllerOriginalImage"];
UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
- 接下来,您不会在此处释放
实例:ImageDisplayViewController\u obj
取消对此行的注释// [ImageDisplayViewController_obj release];
- -不要命名变量
(使用picker\u camera
),或pickerCamera
(使用ImageDisplayViewController\u obj
或imageController
)imageVC