我需要知道如何在HTML中使用JavaScript UIWebView来通知Objective-C发生了什么事情?
更确切地说,我正在用HTML播放一些JavaScript动画,我需要提醒动画结束的Objective-C代码.
我正在创建一个应用程序,其顶部有一个文本字段和go按钮,下面有Web视图.当用户在文本字段中输入URL并单击"开始"按钮时,它将开始在webview中加载页面.当用户点击某个链接时,我想在文本字段中显示页面的URL(正在加载).如何获取点击链接的URL.
还有一些网站会重定向到其他网站.所以我的问题是如何在文本字段中显示正在加载的页面的URL?
我正在加载UIWebview并请求可能需要一些时间才能完成加载的URL.请求开始并开始接收数据.但是,请求似乎没有完成.webViewDidFinishLoad永远不会触发webView didFailLoadWithError:callback.
NSURLRequest的超时是否仅在没有响应接收数据时发生,或者如果请求在该时间间隔内没有完成则触发吗?
如果它是前者,是否有一个优雅的解决方案来超时请求?
相关代码是:
加载请求:
- (void) loadRequest {
NSString *targetURL = @"http://myrequestUrl/";
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] initWithURL: [NSURL URLWithString: targetURL] cachePolicy: NSURLRequestReloadIgnoringLocalCacheData timeoutInterval: 15.0] autorelease];
[request setHTTPBasicID: [[self credentialManager] userID] password:[[self credentialManager] password]];
[webView loadRequest:request];
Run Code Online (Sandbox Code Playgroud)
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error {
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible: NO];
[alert hide];
[alert autorelease];
alert = nil;
NSLog(@"error - %@", error);
[self showRetryPrompt: error];
}
- (void) loadRequest {
NSString *targetURL = @"http://myrequestUrl/";
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] …