Począwszy od Androida-Studio 3.0 bardzo łatwo zmienić rodzinę czcionek
Korzystając z biblioteki pomocy 26, będzie działać na urządzeniach z Android API w wersji 16 i wyższej
Utwórz folder font
w res
katalogu. Pobierz czcionkę, którą chcesz i wklej ją do font
folderu. Struktura powinna wyglądać jak poniżej
Uwaga: Począwszy od Android Support Library 26.0, musisz zadeklarować oba zestawy atrybutów (Android: i app:), aby zapewnić ładowanie czcionek na urządzeniach z Api 26 lub starszym.
Teraz możesz zmienić czcionkę w układzie za pomocą
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/dancing_script"
app:fontFamily="@font/dancing_script"/>
Aby zmienić programowo
Typeface typeface = getResources().getFont(R.font.myfont);
//or to support all versions use
Typeface typeface = ResourcesCompat.getFont(context, R.font.myfont);
textView.setTypeface(typeface);
Aby zmienić czcionkę za pomocą styles.xml, utwórz styl
<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>
i zastosuj ten styl do TextView
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Regular"/>
możesz także stworzyć własną rodzinę czcionek
- Kliknij folder czcionek prawym przyciskiem myszy i wybierz Nowy> Plik zasobów czcionek . Zostanie wyświetlone okno Nowy plik zasobów.
- Wprowadź nazwę pliku , a następnie kliknij OK . Nowy plik XML zasobów czcionek zostanie otwarty w edytorze.
Na przykład tutaj wpisz własną rodzinę czcionek
<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>
jest to po prostu mapowanie określonego fontStyle i fontWeight na zasób czcionki, który zostanie użyty do renderowania tego konkretnego wariantu. Prawidłowe wartości dla fontStyle są normalne lub kursywą; i fontWeight jest zgodny ze specyfikacją grubości czcionki CSS
1. Aby zmienić rodzinę czcionek w układzie , możesz pisać
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/lobster"/>
2. Aby zmienić programowo
Typeface typeface = getResources().getFont(R.font.lobster);
//or to support all versions use
Typeface typeface = ResourcesCompat.getFont(context, R.font.lobster);
textView.setTypeface(typeface);
Aby zmienić czcionkę całej aplikacji Dodaj te dwa wiersze w AppTheme
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:fontFamily">@font/your_font</item>
<item name="fontFamily">@font/your_font</item>
</style>
Zobacz dokumentację , samouczek czcionek niestandardowych Androida, aby uzyskać więcej informacji