Necesitamos:
Agregar Archivo de fuente al proyecto
Paso 1: Crear carpeta assets
Clic derecho sobre «app» → New → Folder → Assets Folder y presionamos el boton Finish
Paso 2: crear carpeta de fuentes
dentro de la carpeta que creamos, clic derecho → Directory, escribimos «fonts» y presionamos OK para crear la capeta.
Paso 3: Archivos TTF
Agrega los archivos TTF a la carpeta «fonts» ya sea arrastrando las fuentes con el mouse o con un Cortar/Pegar
MÉTODO 1
El Layout
En el layout que se creo por defecto, editamos el TexView de la siguiente manera:
<TextView android:id="@+id/textview" android:textSize="42sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" />
El Código
en onCreate añadimos el siguiente código:
//se declara texview TextView textview = (TextView) findViewById( R.id.textview ); //se carga la fuente de la carpeta ASSETS Typeface myTypeface = Typeface.createFromAsset(getAssets(), "fonts/Amatic-Bold.ttf"); //se asigna fuente al control Textview textview.setTypeface(myTypeface);
MÉTODO 2
El Código
Creamos una clase llamada «MyTextView» y pegamos el siguiente código:
import android.content.Context; import android.graphics.Typeface; import android.util.AttributeSet; import android.widget.TextView; /** * Clase MyTextView */ public class MyTextView extends TextView { private final String nameFont="OldLondon.ttf"; public MyTextView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); Typeface tf = Typeface.createFromAsset(getContext().getAssets(), "fonts/" + nameFont); setTypeface(tf); } public MyTextView(Context context, AttributeSet attrs) { super(context, attrs); Typeface tf = Typeface.createFromAsset(getContext().getAssets(), "fonts/" + nameFont); setTypeface(tf); } public MyTextView(Context context) { super(context); Typeface tf = Typeface.createFromAsset(getContext().getAssets(), "fonts/" + nameFont); setTypeface(tf); } }
a continuación abrimos el layout «activity_main.xml» y agregamos:
<net.jc_mouse.ejemplofuente.MyTextView android:textSize="42sp" android:layout_below="@+id/textview" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" />
donde net.jc_mouse.ejemplofuente son los paquetes donde se encuentra la clase «MyTextView»
Si abrimos el layout en modo diseño, observaremos dos textview, el primero corresponde al «Metodo 1«, y el segundo a este método, ambos están igual, esto se debe a que la clase a la que hace referencia el control MyTextView no esta compilado.
Para solucionar este problemilla, clic en el menú Buils → Rebuils Project y esperamos unos segundos
Y ya podremos ver la fuente tal cual se presentara en el dispositivo
enjoy!!!
Java nos permite pasar parámetros a una aplicación empaquetada en un *.JAR mediante el MAIN de nuestro programa, pero cl[...]
Cuando realizamos un proyecto java utilizando fuentes de nuestro sistema, al momento de distribuir el programa y ejecuta[...]
El índice TIOBE (TIOBE, The Importance of Being Earnest – «La importancia de ser honesto» – referencia a la[...]
Kotlin es un lenguaje de programación relativamente nuevo que ha ido ganando terreno en el desarrollo de aplicaciones pa[...]
La siguiente clase hace uso de PRINT para imprimir una imagen que se encuentra en un variable de tipo FileInputStream, e[...]
En un post anterior, desarrollamos un swing para simular un efecto FLIP y recibí algunos mensajes pidiéndome un ejemplo[...]