我必须通过 stagewebview 在 html 中显示本地图像文件。当我在 flex 应用程序中加载 html 的 url 时,文本内容正确显示,但它没有显示图像。有什么方法可以在舞台 web 视图中通过 html 加载本地文件?
问问题
2718 次
2 回答
1
该解决方案涉及将所有必要的文件(html、图像、css)复制到存储目录,然后在其中调用您的 html。图像和 CSS 的 URL 将相对于该目录。
此代码显示如何将调用的整个目录的内容复制html
到该存储目录中,然后加载test.html
到您的 StageWebView 对象中。
var source:File = File.applicationDirectory.resolvePath("html/") ;
var destination:File = File.applicationStorageDirectory;
source.copyTo(destination, true);
var initialURL = new File(destination.resolvePath("test.html").nativePath).url;
webView.loadURL( initialURL );
请注意,您将负责清理该目录。
于 2014-03-28T12:04:51.277 回答
0
您可以使用文件类加载本地 HTML 文件。所以它会是这样的:
var _locaWebFile:File = File.documentsDirectory.resolvePath(pathToHTMLContent);
var _webview:StageWebView = new StageWebView();
_stage.scaleMode = StageScaleMode.NO_SCALE;
_webview.stage = _stage;
_webview.loadURL(_localWebFile.url);
_webview.addEventListener(flash.events.Event.COMPLETE, loadData);
function loadData(e:Event):void
{
_webview.viewPort = new Rectangle(0, 0, _stage.stageWidth, _stage.stageHeight);
}
此外,您可能必须确保图像的路径正确。
于 2013-05-17T09:44:24.150 回答