アプリケーションに画像を追加しましたが、それらをWebビューに表示したいと思います。試しましたが成功しませんでした。これらの画像のパスをhtmlのimageタグに設定するにはどうすればよいですか?また、それらを表示する方法を教えてください。
これから私を助けてください。
ありがとう、マダン・モハン。
アプリケーションに画像を追加しましたが、それらをWebビューに表示したいと思います。試しましたが成功しませんでした。これらの画像のパスをhtmlのimageタグに設定するにはどうすればよいですか?また、それらを表示する方法を教えてください。
これから私を助けてください。
ありがとう、マダン・モハン。
画像を個別に表示しているだけですか、それとも画像を参照するHTMLファイルがありますか?
ファイルへのURLを直接取得するには:
NSString *pathForImage = [[NSBundle mainBundle] pathForResource:@"image" ofType:@"png"];
NSURL *URL = [NSURL fileURLWithPath:pathForImage];
画像を参照するHTMLファイルをロードする場合(<img src="image.png">
パス情報なしで、を含めるなど)、次のようにします。
[webView loadHTMLString:htmlString
baseURL:[[NSBundle mainBundle] resourceURL]];
編集:つまり、アプリケーションバンドルにリソースとしてimage.pngがあるとすると、次のことができます。
[webView loadHTMLString:@"<html><body><img src=\"image.png\"></body></html>"
baseURL:[[NSBundle mainBundle] resourceURL]];
WebビューのHTMLで
<img src="imagename">
ここで、imagenameは画像のファイル名です。iPhoneにはフォルダ構造などはありません。つまり、XCodeでグループまたはフォルダを設定している場合でも、実行時にそれらはすべて1つの巨大なディレクトリにまとめられます。
それがすぐに機能しない場合は、ベースURLをどのように設定しているかを確認してください。電話機にローカルで表示するように通知するには、baseURLをnilに設定する必要がある場合があります。
次のコードサンプルで問題が解決する場合があります。頑張ってください。
NSData * image = [[NSMutableData alloc] initWithContentsOfFile:@"image.png"];
[self.webView loadData:image MIMEType:@"image/png" textEncodingName:nil baseURL:nil];
[image release];
[self.view addSubView:webView];