Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone-在imagePickerController中禁用ModalViewController_Iphone_Objective C_Cocoa Touch - Fatal编程技术网

Iphone-在imagePickerController中禁用ModalViewController

Iphone-在imagePickerController中禁用ModalViewController,iphone,objective-c,cocoa-touch,Iphone,Objective C,Cocoa Touch,假设我有一个实现UIImagePickerControllerDelegate的控制器类a 在中,我实现了如下委托: -(void) imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo { [self dismissModalViewControllerAnimated:Y

假设我有一个实现UIImagePickerControllerDelegate的控制器类a

在中,我实现了如下委托:

-(void) imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo
{
    [self dismissModalViewControllerAnimated:YES];  
}

谁会在这里被解雇?imagePickerController还是一个?请解释为什么…

UIViewController
上调用
presentModalViewController:animated:
将以模态方式显示视图控制器。类似地,
解除模态视图控制器的激活:
解除模态视图控制器的激活。在这种情况下,它将关闭图像选择器控制器(假设图像选择器控制器是作为其委托的对象的模态视图,这很可能是这种情况)。

UIImagePickerController将关闭。下面是

父视图控制器为 负责解除合同 使用 presentModalViewController:动画: 方法。如果在 但是,模态视图控制器本身, 模态视图控制器 自动将邮件转发到 它的父视图控制器


你试试看,这对我有用

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{

[picker dismissModalViewControllerAnimated:YES];
}

cheeers..

如果显示模态视图的对象与代理不相同,您将如何取消模态视图?然后你能用“[picker DismissModalViewController激活]”代替[self DismissModalViewController激活]?不完全正确<代码>[picker dismissModalViewControllerAnimated:表示您告诉
UIImagePickerController
关闭其模式视图控制器。您要做的是
[[picker parentViewController]dismissModalViewControllerAnimated:
。是的,但是根据下面的答案,结果是相同的。当然,除非模态视图打开了另一个模态视图,在这种情况下,我想只有最内在的一个视图会关闭,这不是我想要的。所以我想专门调用父视图控制器是更好的选择。哦,我明白了,我不知道视图控制器会将消息转发给它的父视图控制器。但是,这会使代码更难阅读,并可能无意中导致您忽略错误的视图控制器,因此您最好直接在父视图控制器上调用它。