私の質問を見てくれてありがとう。テストを行うために、webView の現在の URL の文字列をコンソールに出力しました。しかし、m.youtube.com では、URL が渡されていないようです。これがおそらく次のような方法を使用する理由です。
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
if (navigationType == UIWebViewNavigationTypeLinkClicked) {
[[UIApplication sharedApplication] openURL:request.URL];
return NO;
}
return YES;
}
m.youtube.com では動作しませんが、他の Web サイトでは動作します。
Mathew が言ったように、YouTube は Javascript を使用して読み込まれるので、私の質問を言い換えさせてください - 新しい JavaScript がページに読み込まれたときに Safari でサイトを開く方法はありますか?
私の問題を含むサンプル プロジェクトをアップロードしました。
https://www.dropbox.com/sh/m4yjv7awpj9wlh8/q0nQgHlQQC/YouTubeWebView
どうもありがとう!