如果从tableView调用UIWebView,则不调用loadRequest:didSelectRowAtIndexPath:

时间:2012-07-22 08:30:35

标签: ios uitableview uiwebview didselectrowatindexpath

我知道,这个问题已经多次问过,但没有帮助我。因此,当触摸UITableView中的行时,我想触发loadRequest。但由于某种原因,它不起作用。当[webView loadRequest:request];被称为,没有任何反应。这是我的代码:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSString *bookmarkString = [NSString stringWithFormat:@"%@", [bookmarks objectAtIndex:indexPath.row]];
NSURL *url = [NSURL URLWithString:bookmarkString];
NSURLRequest *request1 = [NSURLRequest requestWithURL:url];
[tableView deselectRowAtIndexPath:indexPath animated:YES];
[self dismissModalViewControllerAnimated:YES];
[myWebView1 loadRequest:request1];
urlField1.text = bookmarkString;

}

我已尝试过此代码的许多不同变体,但没有任何效果。使用断点进行调试后,所有内容都将被调用,但Web视图上实际上没有任何内容。解雇模态视图控制器可以工作,但不能解决loadRequest。有人可以帮忙吗?

编辑:我使用故事板

1 个答案:

答案 0 :(得分:0)

你应该尝试分配UIWebView,然后进行调用,即使你从xib连接它

    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
if(!myWebView1)
{
    myWebView1 = [UIWebView alloc]init];
}
        NSString *bookmarkString = [NSString stringWithFormat:@"%@", [bookmarks objectAtIndex:indexPath.row]];
        NSURL *url = [NSURL URLWithString:bookmarkString];
        NSURLRequest *request1 = [NSURLRequest requestWithURL:url];
        [tableView deselectRowAtIndexPath:indexPath animated:YES];
        [self dismissModalViewControllerAnimated:YES];
        [myWebView1 loadRequest:request1];
        urlField1.text = bookmarkString;
    }