页面未在uiwebview故事板中加载

时间:2013-06-13 11:44:14

标签: objective-c uiwebview nsurlrequest

我正在尝试从另一个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始终为空。

可能是什么问题?

1 个答案:

答案 0 :(得分:0)

检查

  1. self.myWebView outlet connected
  2. self.myWebView在此次加载后的任何地方重新初始化
  3. EDIT。

    好的原因可能是你在网页视图中设置了网址和加载,但是由于视图尚未加载而没有初始化,因此从nib.Pass 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]]];
    }