我正在开发一个简单的通用ios应用程序,用于在表格中显示图像,当用户选择图像时,它会转到包含更大图像视图的详细视图和用于将图像保存到其中的UIButton / IBAction相册..我使用下面的代码,大部分工作都很好,除了用户第一次按下“保存”它挂起一个loooooong滞后,一个很好的5-6秒。如果用户在延迟时间内多次点击它,那么即使我包含禁用按钮几秒钟的代码,图像也会被多次保存。在第一次触摸按钮时,也不会显示突出显示的按钮。此后它工作正常。有谁知道滞后的原因以及如何解决它。谢谢!
-(IBAction)saveBtn:(UIButton *)pressed{
UIImageWriteToSavedPhotosAlbum(image.myimage, self, @selector(imageSavedToPhotosAlbum: didFinishSavingWithError: contextInfo:), nil);
}
- (void)imageSavedToPhotosAlbum:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo {
NSString *message;
NSString *title;
if (!error) {
title = NSLocalizedString(@"Image Saved", @"");
message = NSLocalizedString(@"You can now view the image in your photo album", @"");
} else {
title = NSLocalizedString(@"Save Failed", @"");
message = [error description];
}
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title
message:message
delegate:nil
cancelButtonTitle:NSLocalizedString(@"OK", @"")
otherButtonTitles:nil];
[alert show];
[alert release];
}
答案 0 :(得分:0)
此问题与此代码无关,而是由于表视图中的大型图像文件的内存使用情况。