1

アプリには、アプリで開きたい Web サイト (jQuery モバイル バージョンがある) へのリンクがいくつかあります。

私は独自のView Controllerを使用し、次のようにUIWebViewを追加します:

webv = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 367)];
[webv setDelegate:self];
[webv loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:self.urlString]]];
[self.view addSubview:webv];

私はナビゲーション コントローラーも使用しているので、ページの読み込み時にタイトルを更新したいと考えています。

- (void)webViewDidFinishLoad:(UIWebView *)webView{
    self.title = [webView stringByEvaluatingJavaScriptFromString:@"document.title"];
}

ただし、jQuery モバイルは AJAX を介してリクエストを作成し、 を呼び出すhistory.pushStateため、webViewDidFinishLoadデリゲート メソッドがトリガーされることはありません。

では、JavaScript を介してページ タイトルが変更されたときにナビ コントローラーを更新するにはどうすればよいでしょうか。

4

1 に答える 1

1

このメソッドからナビゲーション タイトルを設定しようとしましたか

-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{}
于 2012-09-28T18:45:12.163 に答える