Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Hindi Character no se mostrará correctamente en la vista web

Tenía una base de datos en la que los datos almacenados en hindi como \u092e\u0948\u0902 \u0924\ y la configuración de ese contenido a webview utilizando a continuación.

  webview1.loadData(hindi_content, "text/html", "UTF-8"); 

Pero se mostrará como

  • Ejemplo de FloatingActionButton con la biblioteca de soporte
  • NullPointerException relacionado con FragmentManager.popBackStack. ¿Cómo resolver?
  • Parpadeo de la vista Web / parpadea mientras se desplaza
  • Android - ¿Utilizando el método de un servicio en una actividad?
  • Android: cómo acceder mediante programación al número de serie del dispositivo que se muestra en el administrador de AVD (API versión 8)
  • Android: ¿Cómo puedo evitar que DrawerLayout pase eventos táctiles a la vista subyacente
  • Visualización de contenido hindi como

    No sé por qué está pasando eso. Cualquier uno por favor sugiera. Cómo solucionar eso!

  • Cordova / error de compilación jónico (a veces): no tienen el entorno requerido
  • La clase StickersManager no se encuentra para Quickblox
  • SEÑAL FATAL 11 (Sigsegv) en 0x00000000 (código = 1)?
  • El constructor ArrayAdapter <cadena> no está definido
  • Android READ_EXTERNAL_STORAGE permiso no funciona
  • Android: Uso previsto de fragmentos con servicios, diálogos, etc.
  • 5 Solutions collect form web for “Hindi Character no se mostrará correctamente en la vista web”

    Esto ocurre debido a un error con el parámetro de codificación de loadData en la mayoría de las versiones de Android. Este parámetro se ignora por alguna razón por lo que los caracteres hindi basados ​​en UTF-8 no se renderizarán. Para solucionar esto, puede utilizar una de las siguientes alternativas.

     webview1.loadData(hindi_content, "text/html; charset=UTF-8", null); webview1.loadDataWithBaseURL(null, hindi_content, "text/html", "utf-8", null); 

    Este es un duplicado de esta respuesta :

    También necesitará desafinar esas secuencias y hacer eso se refieren a Cómo descifrar Unicode en Java

    Rendering UTF-8 en un WebView utilizando loadData se ha roto de alguna forma o moda para siempre. Número 1733

    Utilice loadDataWithBaseURL en lugar de loadData.

     // Pretend this is an html document with those three characters String scandinavianCharacters = "øæå"; // Won't render correctly webView.loadData(scandinavianCharacters, "text/html", "UTF-8"); // Will render correctly webView.loadDataWithBaseURL(null, scandinavianCharacters, "text/html", "UTF-8", null); 

    Ahora la parte que es realmente molesto es que en el Samsung Galaxy S II (4.0.3) loadData () funciona muy bien, pero las pruebas en el Galaxy Nexus (4.0.2) los caracteres de varios bytes se trastornan a menos que utilice loadDataWithBaseURL ). Documentación de WebView

    Usted necesitará utilizar la fuente para apoyar hindi (el idioma Hindi no es apoyado totalmente por androide) crea la instancia de Singleton de Typeface e invoca createFromAsset (); Y añadirlo a WebSettings como este

     WebSettings webSettings = webView.getSettings(); webSettings.setFixedFontFamily(InstaceOFTypeFace); 

    Finalmente he llegado con la solución de Loading hindi contenido a la webview.

    Simplemente había cambiado mi cadena de carga y, por desgracia, funcionará.

     webview.loadData(Hindi_css, "text/html; charset=UTF-8", null); 

    Gracias a todos por su esfuerzo. 🙂

    Usted puede utilizar este también.

     String uri= Uri.encode(html file/url); webView.loadUrl(uri); 

    Puede ser esto le ayudará.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.