¿Puedo cambiar la fuente de salida de un teclado personalizado de Android?

He desarrollado un teclado personalizado android. Necesito cambiar el estilo de fuente de mi texto de salida que realmente se imprimen usando los unicodes.

¿Cómo puedo cambiar el estilo de fuente de la salida de texto de mi teclado en cualquier parte del dispositivo sin tener que cambiar la fuente predeterminada del dispositivo?

La fuente tampoco está en el dispositivo android, así que tenemos que privide la fuente externa desde la misma aplicación que está desarrollando el teclado.

Cambiando el estilo de fuente dentro de la aplicación.

Crear una clase simple llamada

FontOverride

import java.lang.reflect.Field; import android.content.Context; import android.graphics.Typeface; public final class FontsOverride { public static void setDefaultFont(Context context, String staticTypefaceFieldName, String fontAssetName) { final Typeface regular = Typeface.createFromAsset(context.getAssets(), fontAssetName); replaceFont(staticTypefaceFieldName, regular); } protected static void replaceFont(String staticTypefaceFieldName, final Typeface newTypeface) { try { final Field staticField = Typeface.class .getDeclaredField(staticTypefaceFieldName); staticField.setAccessible(true); staticField.set(null, newTypeface); } catch (NoSuchFieldException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } } } 

Ahora cree otra clase para anular las fuentes nombradas

Solicitud

 public final class Application extends android.app.Application { @Override public void onCreate() { super.onCreate(); FontsOverride.setDefaultFont(this, "DEFAULT", "fonts/GeezEdit.ttf"); FontsOverride.setDefaultFont(this, "MONOSPACE", "fonts/GeezEdit.ttf"); /*FontsOverride.setDefaultFont(this, "MONOSPACE", "MyFontAsset2.ttf"); FontsOverride.setDefaultFont(this, "SERIF", "MyFontAsset3.ttf"); FontsOverride.setDefaultFont(this, "SANS_SERIF", "MyFontAsset4.ttf");*/ } } 

Ahora agrega este tipo de letra al estilo en el archivo de estilo android en la carpeta de valores

 <item name="android:typeface">monospace</item> 

Por último mencionar el nombre de la aplicación en el archivo de manifiesto android dentro de la etiqueta de la aplicación

 android:name=".Application" 

Esto funcionará para cambiar la fuente proporcionada por el usuario en el proyecto o aplicación de Android.

  • ¿Cómo Android conjunto de fuentes personalizadas en la lona?
  • ¿Cómo puedo estandarizar Helvetica Neue line cross-browser (no sobre texto en negrita)?
  • Uso de fuentes tipo otf en el estudio de Android
  • Las fuentes @ font-face no se muestran de forma consistente en todas las versiones de Android
  • La fuente del recurso no se carga en android webView
  • ¿Cambiar la fuente del texto al lado del botón de radio?
  • Cómo crear fuentes personalizadas en android studio
  • Establecer fuente para todas las textViews en la actividad?
  • ¿Cómo corregir fallback de la fuente de TextView?
  • ¿Cómo puedo apoyar el texto persa en persa en Android?
  • Tipo de letra de Android o ttf de tipo de letra otf que renderiza símbolos / letras aleatorios
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.