webview でアプリ リソースのページと画像を表示するアプリケーションを開発しています。ページは問題なく動作しますが、iOS 5.1 では画像が表示されません。私が iOS 4.3 または iOS 6.0 でテストしているときは、すべてが魅力的に機能します。画像は正常に表示されています。その正確なシステム バージョンに何か問題があるようです。私が使用しているコードは次のとおりです。
NSString *imgPath = [[NSBundle mainBundle] pathForResource:currentImageName ofType:@"png"];
imgPath = [NSString stringWithFormat:@"%@%@",@"file://",imgPath];
content = [content stringByReplacingOccurrencesOfString: @"{}" withString:imgPath];
myData = [content dataUsingEncoding:NSUTF8StringEncoding];
[webView loadData:myData MIMEType:@"text/html" textEncodingName:@"UTF-8" baseURL:[NSURL URLWithString:@""]];
内容はhtml付きの文字列です。myData は、html ファイルを含む NSData です。画像パスは正しく生成されます。前に述べたように、iOS 4.3 および 6.0 ではすべて正常に動作します。
iOS 5.1 エミュレーターでのデータの値は次のとおりです。
imgPath = file:///Users/deimos/Library/Application Support/iPhone Simulator/5.1/Applications/98C3911D-46D6-49B6-BADC-6B463619EF5E/myApplication.app/pl.lproj/image01.png
画像の URL を置き換える前のコンテンツ:
<body>
<center><img src="{}" /></center>
</body>
画像の URL を置き換えた後のコンテンツ:
<body>
<center><img src="file:///Users/deimos/Library/Application Support/iPhone Simulator/5.1/Applications/98C3911D-46D6-49B6-BADC-6B463619EF5E/myApplication.app/pl.lproj/image01.png" /></center>
</body>