gpt4 book ai didi

iphone - missModalViewControllerAnimated 非原子的?

转载 作者:行者123 更新时间:2023-12-03 20:21:42 25 4
gpt4 key购买 nike

我似乎遇到了一个奇怪的时间问题。我打开 uiimagepicker 作为模态视图。当用户选择图像或我想要拍摄图像时,将其保存到变量中,然后作为模态视图打开电子邮件界面。

我的问题是,我在图像选择器上调用dismissModalViewController,然后为我的电子邮件界面调用presentmodalviewcontroller,但图像选择器没有及时消失以呈现电子邮件 View 。有没有办法“等待”该行代码完成?

(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{
if( [[info objectForKey:UIImagePickerControllerMediaType] isEqualToString:@"public.image"] ){
[self dismissModalViewControllerAnimated:YES];
imageFromCamera = [[UIImageView alloc] initWithImage:[info objectForKey:UIImagePickerControllerOriginalImage]];

MFMailComposeViewController *mailView = [[MFMailComposeViewController alloc] init];
mailView.mailComposeDelegate = self;
[self presentModalViewController:mailView animated:YES];
[mailView release];

}
}

我很确定我设计了一些错误,但如果可以的话请帮助我。

最佳答案

您可以使用 performSelector:withObject:withDelay: 等待给定的时间过去(创建另一个包含稍后要执行的代码的方法。

但是,这可能会引入许多微妙的计时错误,因此我建议仅在最极端的情况下使用它。

我认为您可能可以使用 viewDidAppear: 查找您在 didFinishPicking... 中设置的标志,表明您正在等待 imagePicker 的动画结尾。既然是 didAppear,那么动画应该已经完成​​了。

关于iphone - missModalViewControllerAnimated 非原子的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1160382/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com