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

  • El OnClickListener de Fragment llamado después de OnDestroyView
  • ¿Cómo puedo obtener una cadena de mi respuesta http android?
  • ImageView una dimensión para caber espacio libre y segundo evaluar para mantener la ración de aspecto
  • Cómo forzar el icono de desbordamiento de barra de acción para mostrar
  • ¿Cómo ejecutar Android-x86 4.2 iso en VirtualBox VM?
  • Cómo obtener valor de retorno de javascript en webview de android?
  • Visualización de contenido hindi como

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

  • Capturar la página redirecciona vía javascript en WebView de Android
  • Error al inflar la clase RecyclerView
  • Android: recuperar el nombre del contacto desde el número de teléfono
  • Lista de eventos para un día específico en Android 4+ (problema ALL_DAY)
  • Cómo establecer un listener de onclick para un imagebutton en un alertdialog
  • Cómo comprobar si Async Task ya se está ejecutando
  • 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.