logoImagina

Cómo crear una tipografía personalizada en Android

iconImage
Publicado 2021-05-18
Actualizado el 2023-11-16

Crea tus propias tipografías en Android

En el siguiente tutorial vamos a cambiar la tipografía por defecto de nuestras aplicaciones. Android nos proporciona la fuente llamada Roboto. Podemos ver las características y descargar la tipografía desde la página oficial de desarrolladores de Android.

El tutorial es muy sencillo pero indispensable, ya que cada empresa suele pedirnos que utilicemos su tipografía corporativa.

Creación del proyecto

Crearemos un nuevo proyecto llamado MyTypeface, donde cargaremos dos tipografías distintas. Una de ellas es la fuente libre y la segunda es una tipografía libre llamada actionjackson.

Llamamos al proyecto MyTypeface e indicamos un nombre de paquete. Dejaremos todas las demás opciones por defecto.

Eclipse nos creará una Activity y su correspondiente layout.

Preparación de las tipografías

Una vez creado el proyecto MyTypeface crearemos una carpeta fonts dentro de assets. Dentro de ella insertaremos todas la tipografías de nuestro proyecto.

Podemos descargar las fuentes Folk Solid y actionJackson.

Podemos utilizar ésta técnica desde la versión 1 de Android y no necesitamos ningún tipo de permiso para cargar las fuentes.

Modificación del layout

Vamos a modificar el layout de la actividad de forma que muestre dos textos que modificaremos desde el código de la actividad.

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView
        android:id="@+id/text1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:text="text1"
        tools:context=".MainActivity" />

    <TextView
        android:id="@+id/text2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/text1"
        android:layout_centerHorizontal="true"
        android:text="text2" />

</RelativeLayout>

Modificación de la Activity

A continuación, modificaremos nuestra Activity de la siguiente forma:

import android.app.Activity;
import android.graphics.Typeface;
import android.os.Bundle;
import android.widget.TextView;

public class MainActivity extends Activity {

    /* Fuente textos */
    private Typeface belrosFont;
    private Typeface actionFont;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        belrosFont = Typeface.createFromAsset(getAssets(), "fonts/Folksolid.otf");

        actionFont = Typeface.createFromAsset(getAssets(), "fonts/actionjackson.ttf");

        TextView text1 = (TextView) findViewById(R.id.text1);
        text1.setTypeface(belrosFont);
        text1.setText("Hola Imagina");
        text1.setTextSize(30);

        TextView text2 = (TextView) findViewById(R.id.text2);
        text2.setTypeface(actionFont);
        text2.setText("Hola Imagina");
        text2.setTextSize(30);
    }
}

Podemos observar dos objetos Typeface en los que cargamos las fuentes que tenemos en la carpeta fonts. Cargamos la fuente de Belros mediante el método createFromAsset que nos proporciona la clase Typeface.

belrosFont = Typeface.createFromAsset(getAssets(), "fonts/Folksolid.otf");

Una vez cargada la fuente es muy sencillo utilizarla mediante el método setTypeface de los controles TextView, EditText, entre otros con texto.

text2.setTypeface(actionFont);

Aprende a programar en Android

En conclusión, cambiar la tipografía por defecto en Android es una tarea sencilla pero importante para personalizar nuestras aplicaciones y adaptarlas a las necesidades de cada proyecto. Con el uso de la clase Typeface y la carga de fuentes personalizadas, podemos lograr un diseño visualmente atractivo y coherente con la identidad de la marca.

Si estás interesado en aprender más sobre programación en Android y expandir tus habilidades en el desarrollo de aplicaciones móviles, te recomiendo nuestro curso de programación en Android. Aprenderás desde los fundamentos básicos hasta conceptos avanzados, permitiéndote crear aplicaciones Android de alta calidad y potencializar tus oportunidades en el campo de desarrollo móvil. ¡No pierdas la oportunidad de dar un paso adelante en tu carrera como desarrollador de Android!

iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient