Iphone 从另一个类调用方法,uiwebview和模态视图问题
我在尝试从另一个类调用方法时遇到了一些问题。这是我的密码 Appdelegate.mIphone 从另一个类调用方法,uiwebview和模态视图问题,iphone,xcode,webview,modalviewcontroller,uiapplicationdelegate,Iphone,Xcode,Webview,Modalviewcontroller,Uiapplicationdelegate,我在尝试从另一个类调用方法时遇到了一些问题。这是我的密码 Appdelegate.m - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{ if ([url isFileURL]){ RootViewController *theview = [[RootViewController alloc] init]; [theview handleOpenURL:url];
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{
if ([url isFileURL]){
RootViewController *theview = [[RootViewController alloc] init];
[theview handleOpenURL:url];
}
return YES;
}
RootViewController.h
@interface RootViewController : UIViewController <UIWebViewDelegate>{
IBOutlet UIWebView* mainwebView;
}
- (void)handleOpenURL:(NSURL *)url;
@property (nonatomic, retain) UIWebView* mainWebView;
因此,基本上,我正在尝试更新UIWebView,然后在appdelegate调用handleOpenURL后提供一个模态视图控制器。问题是,这两件事(更新webview和显示视图控制器)都拒绝在handleAppenurl方法中工作。它们在viewdidload中工作得非常好,这使我认为它与从appdelegate调用的方法有关
当从handleOpenURL方法访问webview时,webview只是拒绝响应,当我呈现模态视图控制器时,我得到了错误
Warning: Attempt to present ... whose view is not in the window hierarchy!
但是,当从viewdidload(使用时间延迟选择器)显示时,modalview同样可以正常工作
感谢您的帮助,解释发生这种情况的原因或解决方法将非常有用。您必须在RootViewController.m
中导入“docView.h”
Warning: Attempt to present ... whose view is not in the window hierarchy!
警告表示该视图无法识别,这意味着您无法正确访问该类,如果该类未导入,则说明您没有在docView.m
中正确设置代码
如果这不起作用,我需要更多的信息来帮助解决你的问题
编辑澄清:
- 应用程序委托在开始时调用,指向时调用,而不是 不断地
- 您应该在模态视图加载时调用它,方法 指针([self myFunctionNameHere];)可以正常工作
- 因此,这是因为您没有正确访问应用程序代理
- 我认为你甚至不应该从应用程序代理那里调用它, 从你的m.m
从主(.m)文件调用它可以解决所有问题。当我从app delegate调用该方法时,它是否与使用“self”有关?因此,我的docView.h导入正确,我知道这一点,因为当我从rootviewcontroller的viewdidload显示模式时,它工作正常。问题是当我试图使用appdelegate调用的方法来表示模态时。
Warning: Attempt to present ... whose view is not in the window hierarchy!