これは、ピッカー モーダル ビュー コントローラーをアニメーションで閉じて、新しいビュー コントローラーをすぐに表示するために発生します。前のビュー コントローラーが閉じられた後にのみ、新しいモーダル ビュー コントローラーを提示できます。解決策は、アニメーションなしでピッカー モーダルを閉じることです。
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo
{
[picker dismissModalViewControllerAnimated:NO];
DrawingViewController *viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"Drawing"];
viewController.image.image = image;
[self presentModalViewController:viewController animated:NO];
}
別の解決策 ( iOS 5 でのみ機能するdismissViewControllerAnimated: completion:
) は、次のメソッドを使用することです。
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo
{
[picker dismissViewControllerAnimated:YES completion:^(){
DrawingViewController *viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"Drawing"];
viewController.image.image = image;
[self presentModalViewController:viewController animated:NO];
}];
}