HTML страница некорректно отображается

Activity Lifecycle, Saving Activity State, Managing Tasks, Intent, Intent Filter
Ответить
Карабанов_Алекс
Сообщения: 9
Зарегистрирован: 06 фев 2015, 14:46

HTML страница некорректно отображается

Сообщение Карабанов_Алекс » 14 фев 2015, 14:48

Здравствуйте, я пишу справочник-викторину на андроид устройство, появилась проблема: HTML текст из txt файлов открывается в виде иероглифов, как исправить ошибку???
Вложения
вот что показывает эмулятор
вот что показывает эмулятор
Безымянный.jpg (162.62 КБ) 4202 просмотра

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: HTML страница некорректно отображается

Сообщение altwin » 14 фев 2015, 15:38

изменить кодировку.
Изображение


Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: HTML страница некорректно отображается

Сообщение altwin » 14 фев 2015, 16:29

utf8
Изображение

Карабанов_Алекс
Сообщения: 9
Зарегистрирован: 06 фев 2015, 14:46

Re: HTML страница некорректно отображается

Сообщение Карабанов_Алекс » 14 фев 2015, 16:38

эта кодировка и стоит

package com.example.landirectory;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;
import android.webkit.WebView;

public class HeadsActivity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE); //скрываем заголовок

setContentView(R.layout.heads);

//скрываем строку состояния
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);

Bundle bundle = getIntent().getExtras();

String itemname = "n" + bundle.getString("defStrID"); //получаем строку и формируем имя ресурса

Context context = getBaseContext(); //получаем контекст

//читаем текстовый файл из ресурсов по имени
String text = readRawTextFile(context, getResources().getIdentifier(itemname, "raw", "com.example.landirectory"));

WebView myWebView = (WebView) findViewById(R.id.webView);
myWebView.getSettings().setJavaScriptEnabled(true); // включаем поддержку JavaScript
String summary = "<!Doctype html><html><head><meta charset=utf-8></head><body>" + text + "</body></html>";
myWebView.loadData(summary, "text/html", "utf-8"); //загружаем текст в webview
}

public static String readRawTextFile(Context ctx, int resId) //читаем текст из raw
{
InputStream inputStream = ctx.getResources().openRawResource(resId);

InputStreamReader inputreader = new InputStreamReader(inputStream);
BufferedReader buffreader = new BufferedReader(inputreader);
String line;
StringBuilder text = new StringBuilder();

try {
while (( line = buffreader.readLine()) != null) {
text.append(line);
text.append('\n');
}
} catch (IOException e) {
return null;
}
return text.toString();
}
}

сделал по примеру http://developer.alexanderklimov.ru/android/manual.php

Ответить