Este artículo fue traducido de: Cómo cambiar la fuente Familia de TextView en Android
Por lo tanto, me gustaría cambiar el android:fontFamily
en Android, pero no veo ninguna fuente predefinida en Android. Por lo tanto, quiero android:fontFamily
cambiar en Android, pero no veo ninguna fuente predefinida en Android . ¿Cómo selecciono uno de los predefinidos? ¿Cómo selecciono uno de los predefinidos ? Realmente no necesito definir mi propio TypeFace pero todo lo que necesito es algo diferente de lo que muestra ahora. En realidad no necesito definir mi propio TypeFace, pero todo lo que necesito es diferente de lo que se muestra ahora.
<TextView
android:id="@+id/HeaderText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="52dp"
android:gravity="center"
android:text="CallerBlocker"
android:textSize="40dp"
android:fontFamily="Arial"
/>
¡Parece que lo que hice allí realmente no funcionará! ¡Parece que lo que hice allí realmente no funciona! Por cierto, android:fontFamily="Arial"
fue un intento estúpido! Por cierto, fue un intento estúpido !android:fontFamily="Arial"
Piso # 1
Referencia: https://stackoom.com/question/ot8F/ Cómo cambiar la fuente Familia de TextView en Android
# 2F
Lo que quieres no es posible, lo que quieres no es posible . La necesidad se debe al ajustado por el usuario TypeFace
en el código. Debe establecer en el código TypeFace
.
Un En XML
el Lo que puede hacer es en XML
, puede hacer que
android:typeface="sans" | "serif" | "monospace"
aparte de esto, no puedes jugar mucho con las fuentes en XML. De lo contrario, no podrás usar fuentes en XML. :) :)
El Para Arial
que necesita para el tipo de letra SET en el código. Por la Arial
necesidad de establecer el tipo de letra en el código.
Piso # 3
Esta es la forma de configurar la fuente mediante programación: Esta es la forma de configurar la fuente mediante programación :
TextView tv = (TextView) findViewById(R.id.appname);
Typeface face = Typeface.createFromAsset(getAssets(),
"fonts/epimodem.ttf");
tv.setTypeface(face);
Coloque el archivo de fuente en su carpeta de activos. Coloque el archivo de fuente en su carpeta de activos . En mi caso, creé un subdirectorio llamado fonts. En mi caso, creé un subdirectorio llamado fonts .
EDITAR: si se pregunta dónde está su carpeta de activos, vea esta pregunta EDITAR: si desea saber dónde está su carpeta de activos, consulte esta pregunta
# 4F
Al mismo tiempo, como el de TI android:typeface
. Y android:typeface
lo mismo.
las fuentes incorporadas son: las fuentes incorporadas son :
- normal de la normalidad
- sans no
- serif Serif
- monospace ancho
Ver android: typeface . 参见android : typeface。
# 5F
Android no le permite configurar fuentes personalizadas desde el diseño XML. Android no le permite configurar fuentes personalizadas desde el diseño XML . En su lugar, debe agrupar el archivo de fuente específico en la carpeta de activos de su aplicación y configurarlo mediante programación. En su lugar, debe agrupar el archivo de fuente específico en la carpeta de activos de la aplicación y configurarlo mediante programación . Algo así como: como:
TextView textView = (TextView) findViewById(<your TextView ID>);
Typeface typeFace = Typeface.createFromAsset(getAssets(), "<file name>");
textView.setTypeface(typeFace);
Tenga en cuenta que solo puede ejecutar este código después de llamar a setContentView (). Tenga en cuenta que solo puede ejecutar este código después de llamar a setContentView (). Además, solo algunas fuentes son compatibles con Android, y deben estar en formato .ttf (TrueType)
o .otf (OpenType)
. Además, Android solo admite ciertas fuentes y debe usar .ttf (TrueType)
o .otf (OpenType)
formatear. Incluso entonces, algunas fuentes pueden no funcionar. Incluso entonces, algunas fuentes pueden no funcionar .
La presente es una fuente que definitivamente funciona en Android, y se puede utilizar la presente que el código para confirmar el trabaja en el archivo caso su fuente no está soportado por Android. Esto es un absoluto que se puede utilizar en la fuente de Android, si no Android Admite tu archivo de fuente, puedes usarlo para confirmar que tu código funciona correctamente.
Actualización de Android O: ahora es posible con XML en Android O , según el comentario de Roger Actualización de Android O: según el comentario de Roger, ahora puede usar XML en Android O para actualizar.
Piso # 6
Desde Android 4.1 / 4.2 / 5.0, están disponibles las siguientes familias de fuentes Roboto : a partir de Android 4.1 / 4.2 / 5.0, se puede utilizar la siguiente familia de fuentes Roboto :
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 combinación con en combinación con ...
android:textStyle="normal|bold|italic"
estas 16 variantes son posibles: estas 16 variantes son posibles :
- Roboto regular de rutina robot
- Roboto italic italic
- Roboto bold Roboto bold
- Roboto negrita cursiva Roboto gruesa cursiva
- Roboto-Light luz robot
- Roboto-Light cursiva Roboto-Light 斜体
- Roboto-Thin mecánica Thin
- Roboto-Thin cursiva Roboto-Thin 斜体
- Roboto-Condensed robot concentrado
- Cursiva Roboto-Condensada Cursiva Roboto comprimida
- Roboto-Condensed negrita robot concentró cuerpo negro
- Condensada negrita-cursiva Roboto Roboto comprimido cursiva negrita
- Roboto-Negro Robot Negro
- Cursiva Roboto-Negra Cursiva Roboto-Negra
- Roboto-Medium Robot
- Roboto-Medium cursiva cursiva mecánicas
fonts.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="font_family_light">sans-serif-light</string>
<string name="font_family_medium">sans-serif-medium</string>
<string name="font_family_regular">sans-serif</string>
<string name="font_family_condensed">sans-serif-condensed</string>
<string name="font_family_black">sans-serif-black</string>
<string name="font_family_thin">sans-serif-thin</string>
</resources>