我正在使用Appcelerator Titanium开发移动应用程序。当我尝试创建WebView以使用iframe打开本地html文件时,它改为在iframe中打开了html文件。父html被替换。当我在第二个html文件中再包装一个iframe时,仅打开了最里面的html。
该问题仅在Android中发生。它在iOS中不会发生。并且,如果html在互联网上,则它将正确显示。而且只有本地html才有这种行为。
是Android问题还是Appcelerator的错误?可以解决吗?提前致谢。
这是我的示例代码:
app.js
var self = Ti.UI.createWindow({});
var url =“ index.html”;
var webview = Ti.UI.createWebView({
url:url,
宽度:Ti.UI.FILL,
高度:Ti.UI.FILL
});
self.add(webview);
index.html
第1页
index2.html
第2页
iOS和Android中的结果-https://imgur.com/a/XUiFGrI
答案 0 :(得分:-1)
在资产/文件夹名称中创建一个html文件。您只需将html代码放在FolderName文件夹中,然后使用下面的代码在webview上显示html页面。
String s = "FolderName/htmlFileName.html";
StringBuilder aboutText = new StringBuilder();
try
{
InputStream is = getAssets().open(s);
BufferedReader reader = new BufferedReader(
new InputStreamReader(is));
String line;
while ((line = reader.readLine()) != null)
{
aboutText.append(line);
}
} catch (IOException e)
{
Log.e(LOGTAG, "About html loading failed");
}
webView.loadData(aboutText.toString(), "text/html", "UTF-8");