handleOpenURL方法.提出modalviewcontroller并传递url信息

dav*_*vis 1 iphone xcode delegates appdelegate

我的app delegate中的handleOpenURL方法遇到了一些问题.我有一个应该正常显示的rootviewcontroller,但是当我的应用程序中打开一个文件时,我需要handleOpenURL方法来呈现一个新的viewcontroller并发送url信息.问题是我无法从我的app委托呈现模态视图控制器.此外,当我尝试在我的rootviewcontroller中调用一个方法来呈现我得到的modalviewcontroller时

 Warning: Attempt to present ... whose view is not in the window hierarchy!
Run Code Online (Sandbox Code Playgroud)

所以,我想我只是在寻找能够呈现新的模态视图控制器并将url信息传递给该类的解决方案.这是app委托方法.

- (void)handleOpenURL:(NSURL *)url {

}
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助

App*_*ate 5

在RootViewController中,创建appDelegate的实例就像

 YourAppDelegate *appDelegate = (YourAppDelegate *)[[UIApplication sharedApplication]delegate];
    appDelegate.rootViewControllerInstance = self;
Run Code Online (Sandbox Code Playgroud)

主题

[appDelegate handleOpenURL:yourURL];
Run Code Online (Sandbox Code Playgroud)

还创建一个callBackFunction,例如:

-(void)callBack:(NSUrl *)url;

现在在appDelegate类中创建一个property你的RootViewController

并以appDelegate 你的方式指定这种方式..

- (void)handleOpenURL:(NSURL *)url {
[rootViewControllerInstance callBackUrl:url];
}
Run Code Online (Sandbox Code Playgroud)