在UIWebView上加载URL会因“无法识别的选择器”异常而崩溃

时间:2015-03-29 20:19:12

标签: ios objective-c uiwebview

我在我的应用程序中构建了一个视图控制器,其中唯一的元素是UIWebView。我正试图在其视图控制器加载后立即使用以下代码在此uiwebview元素上加载网页:

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    NetworkHelper *networkHelper = [NetworkHelper getInstance];

    NSString *tocsUrl = [NSString stringWithFormat:@"%@%@",                         networkHelper.clientConfiguration[@"hdv_production_uri"],
                         @"/tocs?device=iOS"];
    NSURL *url = [NSURL URLWithString:tocsUrl];
    NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url];
    [self.webView loadRequest:urlRequest];
}

String tocsUrl是一个有效的http字符串(http://192.168.1.12:3000/tocs?device=iOS)。

但是,行[self.webView loadRequest:urlRequest];正在崩溃应用程序,但出现以下异常:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIView loadRequest:]: unrecognized selector sent to instance 0x170188fd0'
*** First throw call stack:
(0x186d86530 0x197d640e4 0x186d8d5f4 0x186d8a3ac 0x186c8ec4c 0x1000b5d18 0x18b594958 0x18b594668 0x18bc881d0 0x18b88f790 0x18b8aab50 0x18b8acf68 0x18b681c4c 0x18b5c8a14 0x18b5b1d08 0x18b5c83b0 0x18b587ec8 0x186d3ed98 0x186d3bd24 0x186d3c104 0x186c691f4 0x19008b6fc 0x18b5fa10c 0x1000e0ad8 0x1983e2a08)
libc++abi.dylib: terminating with uncaught exception of type NSException

self.webView在.h文件中定义为:

@property (strong, nonatomic) IBOutlet UIWebView *webView;

有关如何解决此崩溃的任何指示都将受到高度赞赏。

1 个答案:

答案 0 :(得分:6)

检查您的webView,您已将其分配到UIView而不是UIWebView。您还可以删除并重新添加与UIWebView和Interface Builder的连接。您可以使用shift+option+right click确保在IB中选择正确的控制器