Ios 应用程序在捕获大量图像时崩溃
我收到内存警告,应用程序崩溃Ios 应用程序在捕获大量图像时崩溃,ios,iphone,ipad,Ios,Iphone,Ipad,我收到内存警告,应用程序崩溃 - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage]; [self.btnSelectImage setImage:ima
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
[self.btnSelectImage setImage:image forState:UIControlStateNormal];
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)
{
[popOverSelectImage2 dismissPopoverAnimated:YES];
UIViewController *vc = [[UIViewController alloc]init];
vc.view = self.captionView;
[popOverSelectImage setPopoverContentSize:CGSizeMake(self.captionView.frame.size.width, self.captionView.frame.size.height) animated:NO];
popOverSelectImage.contentViewController = vc;
[vc release];
}
else
{
[self dismissModalViewControllerAnimated:YES];
}
self.imageToSave = image;
self.imagePicker = nil;
}
当您在按钮上设置图像时,尽管它显示的尺寸较小,但它使用的是完整的图像,如果您从相机库中获取图像,那么完整的图像将相当大 如果你使用了大量的这些图像,那么你将使用大量的内存
如果你想使用这些图像作为按钮图像,那么你应该创建较小的图像在你需要的大小,并使用这些缩略图,而不是完整的图像。通过这种方式,您将使用更少的内存。当您在按钮上设置图像时,尽管它以较小的尺寸显示,但它使用的是完整的图像,如果您从相机库中获取图像,它将相当大 如果你使用了大量的这些图像,那么你将使用大量的内存
如果你想使用这些图像作为按钮图像,那么你应该创建较小的图像在你需要的大小,并使用这些缩略图,而不是完整的图像。通过这种方式,您将使用更少的内存。没错,您不需要从库中获取太多(可能少于10)的图像来崩溃(内存不足)例如iPhone4。非常感谢您的回复。我会检查它。看起来你还没有使用ARC——你可能想考虑一下。但是我正在释放这样的按钮:Self.bTNSimiTime= nIL;它会有帮助吗?@Sk.Azad是您正在使用的图像的大小和数量导致了问题。没错,您不需要从库中获取大量(可能少于10)图像来崩溃(内存不足)例如iPhone4。非常感谢您的回复。我会检查它。看起来你还没有使用ARC——你可能想考虑一下。但是我正在释放这样的按钮:Self.bTNSimiTime= nIL;它会有帮助吗?@Sk.Azad是您使用的图像的大小和数量导致了问题。