Alf*_*sol 2 iphone model-view-controller uiviewcontroller
看来,我有一个奇怪的计时问题.我打开一个uiimagepicker作为模态视图.当用户选择图像或我想拍摄图像时,将其保存到变量,然后打开电子邮件界面作为模态视图.
我的问题是我在imagepicker上调用dismissModalViewController,然后为我的电子邮件界面调用presentmodalviewcontroller,但是imagepicker并没有及时显示电子邮件视图.有没有办法'等待'完成那行代码?
(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];
}
}
Run Code Online (Sandbox Code Playgroud)
我很确定我设计了一些错误的东西,但如果可以,请帮助我.
您可以使用performSelector:withObject:withDelay:
等待给定时间来传递(创建另一个具有稍后要执行的代码的方法.
然而,这可能会引入许多微妙的时间错误,因此我建议仅将其用于最极端的情况.
我想你可能会做一些事情,viewDidAppear:
寻找你设置的标志,didFinishPicking…
表明你正在等待imagePicker的动画结束.既然它已经完成了,那么动画应该在那时完成.
归档时间: |
|
查看次数: |
4605 次 |
最近记录: |