Estoy definiendo un estilo XML para mi aplicación de Android. Tengo algunos archivos TTF que quiero usar, ¿cómo puedo configurar el tipo de letra para usar esos archivos como la fuente en comparación con el genérico "sans", "serif" & "monoespacio". GraciasEstablecer fuente específica en un styles.xml
Respuesta
Solo puede usar fuentes personalizadas a través del código Java, no a través del diseño XML o estilos/temas - ¡lo siento!
ver el APIDemos Ejemplo en la documentación.
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="CodeFont" parent="@android:style/TextAppearance.Medium">
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textColor">#00FF00</item>
<item name="android:typeface">monospace</item>
</style>
</resources>
he creado un pequeño tutorial sobre esto ... espero que pueda ser útil http://spinettaro.blogspot.it/2013/01/custom-font-for-view.html
TextViewPlus.java:
package com.example;
import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.Typeface;
import android.util.AttributeSet;
import android.util.Log;
import android.widget.TextView;
public class TextViewPlus extends TextView {
private static final String TAG = "TextView";
public TextViewPlus(Context context) {
super(context);
}
public TextViewPlus(Context context, AttributeSet attrs) {
super(context, attrs);
setCustomFont(context, attrs);
}
public TextViewPlus(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
setCustomFont(context, attrs);
}
private void setCustomFont(Context ctx, AttributeSet attrs) {
TypedArray a = ctx.obtainStyledAttributes(attrs, R.styleable.TextViewPlus);
String customFont = a.getString(R.styleable.TextViewPlus_customFont);
setCustomFont(ctx, customFont);
a.recycle();
}
public boolean setCustomFont(Context ctx, String asset) {
Typeface tf = null;
try {
tf = Typeface.createFromAsset(ctx.getAssets(), asset);
} catch (Exception e) {
Log.e(TAG, "Could not get typeface: "+e.getMessage());
return false;
}
setTypeface(tf);
return true;
}
}
attrs.xml: (en res/valores)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="TextViewPlus">
<attr name="customFont" format="string"/>
</declare-styleable>
</resources>
main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:foo="http://schemas.android.com/apk/res/com.example"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<com.example.TextViewPlus
android:id="@+id/textViewPlus1"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:text="@string/showingOffTheNewTypeface"
foo:customFont="saxmono.ttf">
</com.example.TextViewPlus>
</LinearLayout>
que pondría "saxmono.ttf" en el activos carpeta.
Sí, se puede :)
paso 1: Crear una carpeta y el nombre de 'fuente' y su .ttf en su interior. enter image description here
paso 2: Ir a style.xml y haga lo siguiente: - enter image description here
Paso 3: Utilice la etiqueta de estilo en la interfaz de usuario de cualquier objeto: -
Antes de todo esto, primero, necesita actualizar para actualizar a la biblioteca de soporte 26 aquí hay un enlace https://segunfamisa.com/posts/custom-fonts-with-android-support-library –
- 1. ¿Qué significa 'parent' en styles.xml?
- 2. Establecer precisión específica de un BigDecimal
- 3. Parámetro attrs personalizado utilizado en styles.xml
- 4. establecer UIButton fuente
- 5. ¿Cómo puedo establecer un control DateTimePicker en una fecha específica?
- 6. establecer el tamaño de fuente en jquery
- 7. Establecer la notificación a la hora específica
- 8. Java: Obtener una fuente con una altura específica en píxeles
- 9. Establecer la misma fuente para todos los componentes Java
- 10. Establecer falsa en la columna específica para todas las filas
- 11. ¿Cómo crear dinámicamente un botón y asignarle un estilo definido en styles.xml?
- 12. establecer fuente de ImageView dinámicamente android
- 13. Establecer fuente predeterminada para SWT Shell
- 14. Establecer la fuente de la fuente predeterminada de Emacs por búfer/modo
- 15. ¿Cómo instalar todos los paquetes NuGet desde una fuente específica?
- 16. ¿Cómo establecer un atributo Xcode en CMake para una configuración específica?
- 17. ¿Cómo leer y establecer un valor de una celda específica en una cuadrícula ExtJS?
- 18. cómo establecer el tamaño de fuente LaTeX en milímetros?
- 19. ¿Es posible establecer una fuente diferente en One UIlabel?
- 20. Establecer Cadena como Fuente de Imagen en C#
- 21. Inconsistencia al establecer el tamaño de la fuente TextView en el código y en los recursos
- 22. CSS: establecer el peso de la fuente en función de la fuente alternativa
- 23. un Git específica cometer
- 24. ¿Cómo le digo a Java que asigne una fuente lógica (por ejemplo, SansSerif) a una fuente específica en mi sistema?
- 25. Establecer un tiempo de espera para una función específica/bloque de código (no todo el script)?
- 26. Cómo establecer el tamaño de fuente en un control de Windows Phone 7 Pivot o PivotItem
- 27. No se puede establecer un 'Enlace' en la propiedad 'Fuente' del tipo 'Encuadernación'
- 28. Establecer SelectedItem en un cuadro combinado vinculado a la fuente de datos
- 29. ¿Cómo establecer múltiples estilos de fuente al crear una instancia de una fuente?
- 30. Establecer programáticamente la fuente de una imagen (XAML)
Muchas gracias Lo aprecio. – NickTFried
@ SergiCastellsaguéMillán: Esta pregunta fue para usar fuentes TTF. La respuesta a la que se vinculó es para todo ** pero ** fuentes TTF. – CommonsWare
Dado que esta es una respuesta anterior; ¿sabe si esto ha cambiado algo en versiones posteriores, @CommonsWare? A mí también me gustaría poder cambiar las fuentes definiéndolas en un documento ''. –