WebView stringByEvaluatingJavaScriptFromString
にソースファイル(src = "")として参照する必要があるバンドルリソースにあるイメージがあります。私はウェブサイトから外部の画像を参照することはできますが、ローカル画像のURLを書き込む方法はわかりません。stringByEvaluatingJavaScriptFromStringリファレンスローカルファイル
どうすればいいですか?
WebView stringByEvaluatingJavaScriptFromString
にソースファイル(src = "")として参照する必要があるバンドルリソースにあるイメージがあります。私はウェブサイトから外部の画像を参照することはできますが、ローカル画像のURLを書き込む方法はわかりません。stringByEvaluatingJavaScriptFromStringリファレンスローカルファイル
どうすればいいですか?
あなたがこれを行うことができますどのように表示する例...私のviewDidLoad
で
、下図のように私はのUIWebViewにいくつかの例のHTMLを追加してい:(これは簡単にリモートURLへloadRequest:
コールすることができます)
NSString *html = @"<html><body><img id='theImage'></img></body></html>";
[self.webView loadHTMLString:html baseURL:nil];
ビューコントローラをUIWebViewのデリゲートとして設定し、HTMLのロードが完了するまで待つ必要があります。次に、スクリプトを実行して画像URLを修正することができます。
- (void)webViewDidFinishLoad:(UIWebView *)webView {
// Get the path to the image in the bundle you wish to display, and create a URL from this path.
NSString *imagePath = [[NSString alloc] initWithString:[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"MyImage.png"]];
NSURL *imageURL = [NSURL fileURLWithPath:imagePath];
// Create a script to execute in the web view.
NSString *script = [[NSString alloc] initWithFormat:@"document.getElementById('theImage').src = \"%@\";", imageURL];
// Execute the script.
[self.webView stringByEvaluatingJavaScriptFromString:script];
// Tidy up.
[imagePath release];
}
イアン、返事をありがとう。私は実際に関連トピックについて見た別のチュートリアルに基づいて "stringByAppendingPathComponent"を使ってみました。私はスクリプトを間違って実行したのか、スクリプトが間違っていたのか分かりませんが、実際にはうまくいきません。私は家に帰るとこの方法を試してくれるでしょう。うまくいけばそれはうまくいくでしょう。私はあなたに戻ってきます。 – Charles
私はそれをテストし、それは働いた...しかし、あなたはwebViewDidFinishLoadデリゲートメソッドでそれを行う必要があります。がんばろう! –
はい、私はwebViewDidFinishLoadで私の現在のスクリプトを実行しているので、私はあまりスクリプトを変更する必要はないと思う。うまくいけば、これは私のために働くでしょう!助けてくれてありがとう! – Charles
この目的はCですか?マック? iOS?ルビー? Java? –
xcode。それはiosアプリケーションです。 – Charles
FYI、XCodeは、Mac、iOS、Java、Ruby、その他の言語とプラットフォーム用に開発された、汎用性の高い統合開発環境です。乾杯! –