目标C另一类的呼叫方法

时间:2011-07-26 13:29:52

标签: iphone objective-c class methods uiwebview

我有两个类,例如MainViewController和'FooView'。

在MainViewController中,我有一个名为-(void)doSearch

的方法

我正试图从Foo调用doSearch,在日志“doSearch”(NSLog)中看到但是UIWebView没有响应。

MainViewController *mainVc = [[MainViewController alloc] init];
[mainVc doSearch];

MainViewController


- (void)doSearch {
    NSLog(@"doSearch");
    [myWebView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com/"]]];
}

myWebView是一个UIWebView。

谢谢,

Guy Dor

3 个答案:

答案 0 :(得分:0)

检查“mainVc”是否为零。你可能正在初始化它。

答案 1 :(得分:0)

我认为这里的事情是零。在Obj-C中,您可以在nil对象上发送消息(调用方法),而不会出现错误或异常。在您的情况下,您的MainViewController在FooView中可能为null,或者该方法中的某些内容可能为零。例如,如果有一个该视图控制器的xib文件,那么它需要加载initWithNibName:bundle:。如果你不这样做,那么IBOutlets将是nil(例如你的doSearch中的myWebView:方法)。

答案 2 :(得分:0)

如果您使用NIB文件创建MainViewController,那么您必须像这样调用。

  MainViewController *mainVc = [[MainViewController alloc]initWithNibName:@"MainViewController" bundle:nil];

  [mainVc doSearch];