Ausgehend von Android-Studio 3.0 es ist sehr einfach, die Schriftfamilie zu ändern
Mit der Unterstützungsbibliothek 26 funktioniert es auf Geräten mit Android API Version 16 und höher
Einen Ordner erstellen font
unter res
Laden Sie die gewünschte Schriftart herunter und fügen Sie sie in das Verzeichnis font
Ordner. Die Struktur sollte in etwa wie folgt aussehen
Anmerkung: Ab Android Support Library 26.0 müssen Sie beide Attributgruppen ( Android: und app: ) deklarieren, um sicherzustellen, dass Ihre Schriften auf Geräten mit Api 26 oder niedriger laufen.
Jetzt können Sie die Schriftart in Layout mit
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/dancing_script"
app:fontFamily="@font/dancing_script"/>
Zum Ändern Programmatisch
Typeface typeface = getResources().getFont(R.font.myfont);
//or to support all versions use
Typeface typeface = ResourcesCompat.getFont(context, R.font.myfont);
textView.setTypeface(typeface);
So ändern Sie die Schriftart mit styles.xml einen Stil erstellen
<style name="Regular">
<item name="android:fontFamily">@font/dancing_script</item>
<item name="fontFamily">@font/dancing_script</item>
<item name="android:textStyle">normal</item>
</style>
und wenden Sie diesen Stil auf TextView
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Regular"/>
können Sie auch Ihr eigenes erstellen Schriftfamilie
- Klicken Sie mit der rechten Maustaste auf den Schriftartenordner und wählen Sie Neu > Font-Ressourcen-Datei . Das Fenster Neue Ressourcendatei erscheint.
- Geben Sie die Dateiname und klicken Sie dann auf OK . Die neue Font Resource XML wird im Editor geöffnet.
Schreiben Sie hier Ihre eigene Schriftfamilie, zum Beispiel
<font-family xmlns:android="http://schemas.android.com/apk/res/android">
<font
android:fontStyle="normal"
android:fontWeight="400"
android:font="@font/lobster_regular" />
<font
android:fontStyle="italic"
android:fontWeight="400"
android:font="@font/lobster_italic" />
</font-family>
Dies ist einfach eine Zuordnung eines bestimmten fontStyle und fontWeight zu der Schriftart-Ressource, die zum Rendern dieser spezifischen Variante verwendet werden soll. Gültige Werte für fontStyle sind normal oder kursiv; und fontWeight entspricht der CSS-Spezifikation für die Schriftstärke
1. An ändern fontfamily in Layout können Sie schreiben
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/lobster"/>
2. Zum Ändern Programmatisch
Typeface typeface = getResources().getFont(R.font.lobster);
//or to support all versions use
Typeface typeface = ResourcesCompat.getFont(context, R.font.lobster);
textView.setTypeface(typeface);
An Schriftart der gesamten App ändern Fügen Sie diese beiden Zeilen in AppTheme hinzu
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:fontFamily">@font/your_font</item>
<item name="fontFamily">@font/your_font</item>
</style>
Siehe die Dokumentation , Tutorial zu benutzerdefinierten Android-Schriftarten Für weitere Informationen