Agregar fuentes personalizadas - Android e iOS - Swift

Así que soy un desarrollador de Android, punto. He estado desarrollando aplicaciones para las plataformas Android durante, bueno, varios años. Disfruté de los diversos proyectos en los que pude trabajar y es divertido hacer cosas con la tecnología que tan bien conoces.

Pero tenía la intención de comenzar a aprender Swift por un tiempo y hace varios meses, finalmente me lancé. Una de las primeras cosas que encontré fue que la curva de aprendizaje era bastante profunda, ya sea migrando de Android Studio a Xcode o usando guiones gráficos en lugar de la codificación de estilo xml en Android.

Así que quería compartir algunos de los obstáculos que enfrenté, esperando que las personas que se topan con los mismos problemas encuentren esto bastante útil.

Entonces, una de las primeras cosas que hago al comenzar un nuevo proyecto en Android es agregar algunas fuentes nuevas.

En Android, copie sus fuentes a la carpeta de activos en el proyecto. Por defecto, la carpeta de activos debe estar debajo de la carpeta raíz del proyecto -> aplicación -> src -> principal

Android: directorio de la carpeta de activos

Nota: si no se crea una carpeta de activos, puede agregar una carpeta en el directorio principal e incluir sus fuentes en la carpeta de activos.

Ahora, para usar esta fuente en su aplicación, todo lo que necesita hacer es escribir 2 líneas de código:

Tipo de letra myTypeFace = Typeface.createFromAsset (getContext (). GetAssets (), "circular_medium.otf");
setTypeface (myTypeFace);

O bien, si usted es como yo y realmente no desea escribir el código anterior en sus 50 vistas de texto o editar texto, puede usar este enlace para facilitarle la vida. (Es una clase de contenedor que escribí para agregar fuentes directamente a su archivo xml)

¡Y eso es! Has agregado tu fuente a tu aplicación de Android.

En iOS, por otro lado, recomiendo que todo se agregue a través del IDE de Xcode.

Paso 1: Primero debes arrastrar y soltar tus fuentes a la carpeta de tu proyecto.

Asegúrese de agregar la fuente debajo de la carpeta del proyecto

Esto abrirá el siguiente mensaje:

Paso 2: asegúrese de que la opción Agregar a objetivos esté marcada como se muestra arriba, la casilla Copiar elementos si es necesario está marcada.

Ahora su fuente se agrega al proyecto. Ahora para usarlo, necesitamos declararlo.

Paso 3: abra el archivo info.plist, haga clic derecho y seleccione Agregar fila:

En la fila, seleccione Fuentes agregadas por aplicación.

Escribí manualmente circular_book.otf

Asegúrese de que el nombre que asigne coincida con el nombre del archivo de fuente.

Paso 4: haga una comprobación rápida, ¿están sus fuentes en Build Phases -> Bundle Resources?

Las fuentes se agregan a las fases de compilación

Paso 5: la fuente se agrega a su proyecto. ¡Ahora para usarlo!

Puede agregar un atributo a un botón, etiqueta, campo de texto

En su guión gráfico, busque la fuente usando el menú desplegable.

Si desea usarlo programáticamente desde su código:

Primero necesitas saber el nombre de la fuente. Como sugiere Apple, el nombre de la fuente podría ser algo completamente diferente del nombre del archivo.

Así que agregue el siguiente código para imprimir todos los nombres de fuente:

para la familia en UIFont.familyNames.sorted () {
    let names = UIFont.fontNames (forFamilyName: family)
    print ("Familia: \ (familia) Nombres de fuente: \ (nombres)")
}

Una vez que sepa el nombre de la fuente, simplemente puede llamar:

// Para el botón:
button.titleLabel? .font = UIFont (nombre: "Circular-Book", tamaño: 20)
// Para etiquetas:
label.font = UIFont (nombre: "Circular-Book", tamaño: 20)

¡Y eso es!

Imagen de fuente personalizada en Android

¡Espero que esto haya sido útil!