Используйте WebView, чтобы открыть локальный HTML с iframe - PullRequest
0 голосов
/ 22 октября 2018

Я использую Appcelerator Titanium для разработки мобильного приложения.Когда я попытался создать WebView для открытия локального html-файла с помощью iframe, вместо этого он открыл html-файл внутри iframe.Родительский HTML был заменен.Когда я обернул еще один iframe во второй html-файл, был открыт только самый внутренний 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 (веб-просмотр);

index.html

Страница 1


index2.html


Page 2

Результат в iOS и Android - https://imgur.com/a/XUiFGrI

1 Ответ

0 голосов
/ 22 октября 2018

Создать HTML-файл в assets / FolderName.Вам просто нужно поместить свой HTML-код в папку FolderName, а затем использовать приведенный ниже код, чтобы отобразить 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");
...