ttf studio google font family android android-fonts android-typeface

family - google fonts android studio



¿Cómo especifico, por ejemplo? Roboto-Medium o Roboto-Black en styles.xml (4)

Publicaciones como esta Cómo cambiar fontFamily of TextView en Android sugiere que las variantes de fuentes Roboto que puedes especificar en styles.xml en Android 4.2 se reducen a lo siguiente:

  • Regular
  • Itálico
  • Negrita
  • Negrita cursiva
  • Ligero
  • Luz-cursiva
  • Delgado
  • Thin-cursiva
  • Condensado regular
  • Condensado en cursiva
  • Condensado negrita
  • Condensado negrita-cursiva

Eso deja fuera la capacidad de estilo TextViews usando, por ejemplo. las fuentes Roboto-Medium o Roboto-Black.

¿Pero por qué Google agregaría fuentes de todo el sistema que no se pueden usar para el diseño de sus TextViews? Seguramente debe haber alguna manera de especificar todas las fuentes Roboto desde styles.xml (es decir, NO tener que insertar las fuentes como Elementos y crear TextViews personalizados en el código), pero ¿cómo?


En Android 5.0 puede configurar Roboto Medium con sans-serif-medium .

Esta solución, tomada de Google iosched 2014 , usa sans-serif en Android pre-v21:

valores / styles.xml

<style name="MyStyle"> <item name="android:fontFamily">@string/font_fontFamily_medium</item> </style>

values ​​/ fonts.xml

<string name="font_fontFamily_medium">sans-serif</string>

values-v21 / fonts.xml

<string name="font_fontFamily_medium">sans-serif-medium</string>


Gracias por Jakob Eriksson

Cómo cambiar fontFamily of TextView en Android

android:fontFamily="sans-serif" // roboto regular android:fontFamily="sans-serif-light" // roboto light android:fontFamily="sans-serif-condensed" // roboto condensed android:fontFamily="sans-serif-black" // roboto black android:fontFamily="sans-serif-thin" // roboto thin (android 4.2) android:fontFamily="sans-serif-medium" // roboto medium (android 5.0)

en estilo:

<style name="AppTheme.DefaultTextView" parent="android:style/Widget.TextView"> <item name="android:textSize">@dimen/text_view_text_size</item> <item name="android:textColor">@color/black</item> <item name="android:fontFamily">sans-serif-light</item> <item name="android:textStyle">normal</item> </style>

en el tema de la aplicación:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/gray</item> <item name="android:textViewStyle">@style/AppTheme.DefaultTextView</item> </style>


Support Library 26 introdujo el uso de fuentes en XML , y es compatible con Android API 14.

Para agregar fuentes como recursos, realice los siguientes pasos en Android Studio:

  1. Haga clic derecho en la carpeta res y vaya a Nuevo> directorio de recursos de Android. Aparece la ventana Nuevo directorio de recursos.

  2. En la lista Tipo de recurso, seleccione fuente y luego haga clic en Aceptar. Nota: El nombre del directorio de recursos debe ser fuente.

  1. Agregue sus archivos de fuentes en la carpeta de fuentes. La estructura de carpetas siguiente genera R.font.dancing_script , R.font.lobster y R.font.typo_graphica .

  1. Haga doble clic en un archivo de fuente para obtener una vista previa de las fuentes del archivo en el editor.

Para establecer una fuente para TextView , en el archivo XML de diseño, establezca el atributo fontFamily en el archivo de fuente al que desea acceder.

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:fontFamily="@font/lobster"/>

La vista previa del diseño de Android Studio le permite obtener una vista previa del conjunto de fuentes en el TextView.

Para agregar una fuente a un estilo, abra styles.xml y establezca el atributo fontFamily en el archivo de fuente al que desea acceder.

<style name="customfontstyle" parent="@android:style/TextAppearance.Small"> <item name="android:fontFamily">@font/lobster</item>

Si no desea agrupar las fuentes en su aplicación, siempre puede buscar en Fuentes descargables


Te sugiero que uses bibliotecas personalizadas como Android-RobotoTextView o Calligraphy . Con uno de estos puede establecer la fuente de una vista en xml con un atributo para que pueda ingresar en styles.xml. Y funcionan con versiones anteriores de Android que 4.0