0

我正在尝试从另一个方法调用一个方法,UIViewController该方法接受一个字符串(url)作为参数并在UIWebView. 下面是类IBAction中的代码UIViewController

-(IBAction)dashboardButtonTapped:(id)sender {

    [self performSegueWithIdentifier:@"dashboard" sender:self];
    Dashboard *db = [[self storyboard] instantiateViewControllerWithIdentifier:@"dashboard"];
    [db openDashboard:@"http://www.google.com"];
}

接受 url 字符串的方法在另一个名为 DashBoard 的类中:

-(void)openDashboard:(NSString *) url {
    [self.myWebView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:url]]];
}

我没有收到任何错误,但UIWebView始终为空白。

可能是什么问题?

4

1 回答 1

0

查看

  1. self.myWebView 插座已连接
  2. self.myWebView 在加载后在任何地方重新初始化

编辑。

好的,原因可能是您正在设置 url 并在 webview 中加载,但它尚未初始化,因为尚未从 nib 加载视图。传递 url 字符串并存储在实例变量中,并在 viewDidLoad 方法中设置 loadRequest实例变量中的值

定义实例变量

NSString *_urlToLoad;

.m

-(void)openDashboard:(NSString *) url {
    _urlToLoad =[url copy];
}

-(void)viewDidAppear:(BOOL)animated
{
    [self.myWebView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:_urlToLoad]]];
}
于 2013-06-13T12:06:22.073 回答