私のアプリでは、UIImagePickerControllerを使用するときにピッカーから取り込んだ画像のサイズを変更して、それが始まる非常に大きなサイズから縮小します。 iPhoneとiPod Touchではうまく動作し、マイナーなラグがあります。しかし、iPadの画面がはるかに大きいので、ピクセルに応じてサイズを変更してからずっと長くなります。UIImageのサイズ変更に時間がかかりますか?
これは私のコードです:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
CGRect screenBounds = [[UIScreen mainScreen] bounds];
CGFloat screenScale = [[UIScreen mainScreen] scale];
CGSize screenSize = CGSizeMake(screenBounds.size.width * screenScale, screenBounds.size.height * screenScale);
UIGraphicsBeginImageContext(screenSize);
[image drawInRect:CGRectMake(0,0,screenSize.width,screenSize.height)];
newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
NSUserDefaults *currentDefaults = [NSUserDefaults standardUserDefaults];
[currentDefaults setObject:UIImagePNGRepresentation(newImage) forKey:@"newImageKey"];
[currentDefaults synchronize];
[popoverController dismissPopoverAnimated:YES];
[picker dismissModalViewControllerAnimated:YES];
}
は、システムが大規模な画像をリサイズされたときに、ユーザーが遅れに気づかれないように迅速にそれをリサイズしたり、それにいくつかの他の方法を実行する方法はありますか?
ありがとうございます!
コードはうまく機能しましたが、2番目のヒントの意味の例を教えてください。 –
また、dispatch_asyncのコールバックがあるので、UIAlertViewを表示することができます。 –
問題がないので、これらすべての質問に対する回答が見つかりました。 –