Reemplazar cadena en html dinámicamente en Android

Estoy utilizando "loadDataWithBaseUrl (…)" para cargar un archivo html, almacenado en los activos, a Webview. Que contiene una cadena "Cargando …" y un GIF giratorio. Cadena "Cargando …" está codificado de forma segura, y no se localizará. ¿Cómo reemplazar esa cadena dinámicamente, para que pueda ser localizada?

Por favor ayúdame a resolver esto.

Hay varias soluciones que podría pensar:

  • Cargue un archivo de activos diferente de acuerdo con el idioma actual (obtenga el idioma actual utilizando Locale.getDefault ()), De esta manera puede traducir sus archivos HTML de forma independiente.

  • Utilice los titulares de lugar en su archivo HTML (por ejemplo, # loading_message #), luego cargue el archivo de activo en una cadena, reemplace todas las ocurrencias del marcador de posición por el mensaje localizado apropiado (String.replaceAll ("# loading_message #", getText .string.loading_message) .toString ())), finalmente cargar el HTML procesado en el WebView utilizando la función loadData (String, String mimeType, String encoding).

Para cargar el archivo de activos, puede hacer algo así:

File f = new File("file:///android_asset/my_file.html"); FileReader fr = new FileReader(f); BufferedReader br = new BufferedReader(fr); StringBuffer sb = new StringBuffer(); String eachLine = br.readLine(); while(eachLine != null) { sb.append(eachLine); sb.append("\n"); eachLine = br.readLine(); } // sb.toString is your HTML file as a String 

Tuve un problema similar al usar el WebView para mostrar el texto de ayuda que debería traducirse.

Mi solución fue agregar varios archivos HTML traducidos en los assets y cargarlos con:

 webView.loadUrl("file:///android_asset/" + getResources().getString(R.string.help_file)); 

Para obtener más información, vaya a: Ayuda HTML específica del idioma en Android

 String str = "Loading ..." String newStr = str.substring("Loading ".length()); newStr = context.getResourceById(R.string.loading) + newStr; 

Espero que el código sea lo suficientemente claro para entender la idea: extraer la cadena sin "Cargar" y concatenarla con la versión localizada de "Cargando" la cadena

  • Enviar correo electrónico en formato HTML
  • Cómo cambiar la posición del botón Mi ubicación en Google Maps con Android Studio
  • ¿Es posible invocar la función Share nativa en iOS y Android a través de un enlace en la página?
  • Cargar archivo .HTML local con WebView
  • ¿Por qué el Samsung Galaxy S ignora la metaetiqueta escalable por el usuario?
  • Android / Phonegap - onClick () no funciona
  • ¿Cómo obtener el html-fuente de una página de un enlace html en android?
  • Imágenes de fondo que no funcionan en Android, BB, Windows Phone
  • Cómo recuperar y modificar el contenido HTML de WebView con Http Post
  • ¿Cuál es mejor para redirigir, resolución de pantalla o agente de usuario?
  • Manejo de spoiler BBcode Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.