Android - використання спеціального шрифту


266

Я застосував спеціальний шрифт до TextView, але, схоже, це не змінило шрифт.

Ось мій код:

    Typeface myTypeface = Typeface.createFromAsset(getAssets(), "fonts/myFont.ttf");
    TextView myTextView = (TextView)findViewById(R.id.myTextView);
    myTextView.setTypeface(myTypeface);

Може хто-небудь, будь ласка, позбавить мене від цього питання?


1
У вашому синтаксисі має бути myTextView.setTypeface(myTypeface);
помилка

Цей потік схожий на: stackoverflow.com/a/14558090/693752
Snicolas

Ознайомтесь із робочим прикладом javatechig.com/2013/03/19/using-external-fonts-in-android-view
Nilanchal


Тут у вас є ефективний спосіб змінити шрифт для всієї програми: stackoverflow.com/questions/18847531/…
Дієго Паломар

Відповіді:


230

У Mobiletuts + є дуже хороший підручник із форматування тексту для Android. Коротка порада: Налаштуйте шрифти Android

РЕДАКТИРУЙТЕ: Я зараз тестував це сам. Ось рішення. Ви можете використовувати підпапку під назвою шрифти, але вона повинна міститись у assetsпапці, а не в resпапці. Так

активи / шрифти

Також переконайтеся, що закінчення шрифту я маю на увазі закінчення самого файлу шрифту - це все нижнє регістр. Іншими словами, цього не повинно бути, myFont.TTFале myfont.ttf такий спосіб повинен бути нижчим


Відредагував мою відповідь на рішення зараз.
Октавіан А. Дам’ян

Не могли б ви надіслати мені якийсь робочий демонстраційний проект? Я спробував як у папці активів / шрифтів / xyz.ttf, так і в активах / xyz.ttf, але цей шрифт не приймає. Він відображає лише шрифт за замовчуванням ..
RATTLESNAKE

2
Впевнений, тут є посилання на проект, що поєднується. dl.dropbox.com/u/8288893/customFont.zip
Октавіан А. Дам’ян

5
Якщо ви дотримуєтесь цього уроку, переконайтеся, що ви використовуєте шлях Typeface.createFromAsset (getAssets (), "шрифти / yourfont.ttf"); якщо ви помістили його у підкаталог шрифтів
Jameo

не включайте "активи /" у назву файлу (оскільки createFromAssetфункція безпосередньо вказує всередині assetsкаталогу)
зверху

55

Спробувавши більшість рішень, описаних у цій темі, я випадково знайшов Calligraphy ( https://github.com/chrisjenx/Calligraphy ) - бібліотеку Крістофера Дженкінса, яка дозволяє легко додавати власні шрифти у ваш додаток. Переваги його ліб порівняно із запропонованими тут підходами:

  1. вам не потрібно вводити власний переоформлений компонент TextView, ви використовуєте вбудований TextView
  2. Ви можете легко включити бібліотеку за допомогою gradle
  3. Бібліотека не обмежує ваш вибір шрифтів; ви просто додасте свої бажані до режиму активів
  4. ви не тільки отримуєте власні текстові перегляди - всі інші текстові компоненти Android також будуть відображатися за допомогою власного шрифту.

1
який розмір цієї бібліотеки - важливе питання, оскільки це вплине на розмір програми.
eRaisedToX

32

Я знаю, що вже є хороші відповіді, але ось цілком працююча реалізація.

Ось спеціальний перегляд тексту:

package com.mycompany.myapp.widget;

/**
 * Text view with a custom font.
 * <p/>
 * In the XML, use something like {@code customAttrs:customFont="roboto-thin"}. The list of fonts
 * that are currently supported are defined in the enum {@link CustomFont}. Remember to also add
 * {@code xmlns:customAttrs="http://schemas.android.com/apk/res-auto"} in the header.
 */
public class CustomFontTextView extends TextView {

    private static final String sScheme =
            "http://schemas.android.com/apk/res-auto";
    private static final String sAttribute = "customFont";

    static enum CustomFont {
        ROBOTO_THIN("fonts/Roboto-Thin.ttf"),
        ROBOTO_LIGHT("fonts/Roboto-Light.ttf");

        private final String fileName;

        CustomFont(String fileName) {
            this.fileName = fileName;
        }

        static CustomFont fromString(String fontName) {
            return CustomFont.valueOf(fontName.toUpperCase(Locale.US));
        }

        public Typeface asTypeface(Context context) {
            return Typeface.createFromAsset(context.getAssets(), fileName);
        }
    }

    public CustomFontTextView(Context context, AttributeSet attrs) {
        super(context, attrs);

        if (isInEditMode()) {
            return;
        } else {
            final String fontName = attrs.getAttributeValue(sScheme, sAttribute);

            if (fontName == null) {
                throw new IllegalArgumentException("You must provide \"" + sAttribute + "\" for your text view");
            } else {
                final Typeface customTypeface = CustomFont.fromString(fontName).asTypeface(context);
                setTypeface(customTypeface);
            }
        }
    }
}

Ось спеціальні атрибути. Це має перейти до вашого res/attrs.xmlфайлу:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name="CustomFontTextView">
        <attr name="customFont" format="string"/>
    </declare-styleable>
</resources>

А ось як ви це використовуєте. Я буду використовувати відносний макет, щоб обернути його і показати customAttrдекларацію, але, очевидно, це може бути будь-який макет у вас вже є.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:customAttrs="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.mycompany.myapp.widget.CustomFontTextView
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="foobar"
         customAttrs:customFont="roboto_thin" />

</RelativeLayout>

Що customAttrsстосується мого проекту?
Скайнет

@Skynet це стосується простору імен, визначених у вашому кореневому режимі, який є xmlns:customAttrs="http://schemas.android.com/apk/res-auto". Це автоматично отримує набір атрибутів для спеціальних представлень. У цьому випадку у вас є атрибут під назвою customFont, визначений у attrs.xml Простіший спосіб зрозуміти - подивитися, xmlns:android="http://schemas.android.com/apk/res/android"який визначає простір імен для ваших атрибутів Android. Тож якби ви змінили це на aтоді, замість android:textцього було б a:text.
CodyEngel

14

Я успішно використовував це раніше. Єдина відмінність між нашими реалізаціями полягає в тому, що я не використовував підпапку в активах. Не впевнений, чи це щось змінить, хоча.


13

Якщо ви розмістили шрифт у потрібному місці та у самому файлі шрифту немає помилок, ваш код повинен працювати так, RATTLESNAKE.

Однак було б набагато простіше, якби ви могли просто визначити шрифт у своєму макеті xml, як це:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

    <!-- This text view is styled with the app theme -->
    <com.innovattic.font.FontTextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="This uses my font in bold italic style" />

    <!-- This text view is styled here and overrides the app theme -->
    <com.innovattic.font.FontTextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:flFont="anotherFont"
        android:textStyle="normal"
        android:text="This uses another font in normal style" />

    <!-- This text view is styled with a style and overrides the app theme -->
    <com.innovattic.font.FontTextView
        style="@style/StylishFont"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="This also uses another font in normal style" />

</LinearLayout>

Із супроводжуючими res/values/styles.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools">

    <!-- Application theme -->
    <!-- Use a different parent if you don't want Holo Light -->
    <style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
        <item name="android:textViewStyle">@style/MyTextViewStyle</item>
    </style>

    <!-- Style to use for ALL text views (including FontTextView) -->
    <!-- Use a different parent if you don't want Holo Light -->
    <style name="MyTextViewStyle" parent="@android:style/Widget.Holo.Light.TextView">
        <item name="android:textAppearance">@style/MyTextAppearance</item>
    </style>

    <!-- Text appearance to use for ALL text views (including FontTextView) -->
    <!-- Use a different parent if you don't want Holo Light -->
    <style name="MyTextAppearance" parent="@android:style/TextAppearance.Holo">
        <!-- Alternatively, reference this font with the name "aspergit" -->
        <!-- Note that only our own TextView's will use the font attribute -->
        <item name="flFont">someFont</item>
        <item name="android:textStyle">bold|italic</item>
    </style>

    <!-- Alternative style, maybe for some other widget -->
    <style name="StylishFont">
        <item name="flFont">anotherFont</item>
        <item name="android:textStyle">normal</item>
    </style>

</resources>

Я створив пару інструментів спеціально для цієї мети. Зверніться до цього проекту від GitHub або подивіться цю публікацію в блозі, яка пояснює все.


13

Найкращий спосіб зробити це з випуску попереднього перегляду Android O таким чином:

він працює лише в тому випадку, якщо у вас є андроїд-студія-2.4 або вище

  1. Клацніть правою кнопкою миші папку res та перейдіть до Нового> Каталог ресурсів Android . З'явиться
    вікно Новий каталог ресурсів.
  2. У списку Тип ресурсу виберіть шрифт та натисніть кнопку ОК.
  3. Додайте свої файли шрифтів у папку з шрифтом . Структура папок нижче створюється R.font.dancing_script,R.font.la_la і R.font.ba_ba.
  4. Подвійне клацання файл шрифту, щоб переглянути його шрифти в редакторі.

Далі ми повинні створити сімейство шрифтів:

  1. Клацніть правою кнопкою миші папку шрифту та перейдіть до пункту «Новий»> «Файл ресурсів шрифту» . З'явиться вікно Новий файл ресурсу.
  2. Введіть ім'я файлу та натисніть кнопку ОК . У редакторі відкриється новий ресурс шрифту XML.
  3. Вкладіть кожен елемент шрифту, стиль та вагу в атрибут шрифту. Наступний XML ілюструє додавання пов'язаних з шрифтом атрибутів у ресурс шрифту XML:

Додавання шрифтів у TextView:

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

З документації

Робота з шрифтами

Всі кроки правильні.


4
ony api> 26 ((
maXp


Тут не вистачає досить великого кроку №3 ... Як це зробити?
Code Wiget

12

Для спеціальних шрифтів в android створіть папку в папці активів, вона "шрифти", розмістіть у ній потрібний файл fonts.ttf або .otf.

Якщо ви розширите UIBaseFragment:

Typeface font = Typeface.createFromAsset(getActivity().getAssets(), "fonts/Arial.ttf");
        tv.setTypeface(font);

інше, якщо розширює активність:

Typeface font = Typeface.createFromAsset(getContext().getAssets(), "fonts/Arial.ttf");
        tv.setTypeface(font);

7

Ви можете використовувати PixlUI на https://github.com/neopixl/PixlUI

імпортуйте їх .jar і використовуйте його в XML

 <com.neopixl.pixlui.components.textview.TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hello_world"
    pixlui:typeface="GearedSlab.ttf" />

4

Оскільки я не був задоволений усіма представленими рішеннями щодо SO, я придумав своє. Він заснований на невеликій хитрість з тегами (тобто ви не можете використовувати теги у своєму коді), я кладу туди шрифт. Отже, визначаючи представлення даних, ви можете зробити це:

<TextView
        android:id="@+id/textViewHello1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World 1"
        android:tag="fonts/Oswald-Regular.ttf"/>

або це:

<TextView
        android:id="@+id/textViewHello2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World 2"
        style="@style/OswaldTextAppearance"/>

<style name="OswaldTextAppearance">
        <item name="android:tag">fonts/Oswald-Regular.ttf</item>
        <item name="android:textColor">#000000</item>
</style>

Тепер ви можете або явно отримати доступ / налаштувати подання як:

TextView textView = TextViewHelper.setupTextView(this, R.id.textViewHello1).setText("blah");

або просто налаштувати все за допомогою:

TextViewHelper.setupTextViews(this, (ViewGroup) findViewById(R.id.parentLayout)); // parentLayout is the root view group (relative layout in my case)

А який магічний клас ви запитуєте? Здебільшого склеєні з інших постів SO, з допоміжними методами як для діяльності, так і для фрагментів:

import android.app.Activity;
import android.content.Context;
import android.graphics.Typeface;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

import java.util.HashMap;
import java.util.Map;

public class TextViewHelper {
    private static final Map<String, Typeface> mFontCache = new HashMap<>();

    private static Typeface getTypeface(Context context, String fontPath) {
        Typeface typeface;
        if (mFontCache.containsKey(fontPath)) {
            typeface = mFontCache.get(fontPath);
        } else {
            typeface = Typeface.createFromAsset(context.getAssets(), fontPath);
            mFontCache.put(fontPath, typeface);
        }
        return typeface;
    }

    public static void setupTextViews(Context context, ViewGroup parent) {
        for (int i = parent.getChildCount() - 1; i >= 0; i--) {
            final View child = parent.getChildAt(i);
            if (child instanceof ViewGroup) {
                setupTextViews(context, (ViewGroup) child);
            } else {
                if (child != null) {
                    TextViewHelper.setupTextView(context, child);
                }
            }
        }
    }

    public static void setupTextView(Context context, View view) {
        if (view instanceof TextView) {
            if (view.getTag() != null) // also inherited from TextView's style
            {
                TextView textView = (TextView) view;
                String fontPath = (String) textView.getTag();
                Typeface typeface = getTypeface(context, fontPath);
                if (typeface != null) {
                    textView.setTypeface(typeface);
                }
            }
        }
    }

    public static TextView setupTextView(View rootView, int id) {
        TextView textView = (TextView) rootView.findViewById(id);
        setupTextView(rootView.getContext().getApplicationContext(), textView);
        return textView;
    }

    public static TextView setupTextView(Activity activity, int id) {
        TextView textView = (TextView) activity.findViewById(id);
        setupTextView(activity.getApplicationContext(), textView);
        return textView;
    }
}

4

На жаль, для цього немає гарного рішення.

Я бачив багато статей про використання користувальницького TextView, але те, що вони забувають, що не лише текстові перегляди можуть реалізовувати шрифти, а є й текстові перегляди, приховані в інших недоступних для розробника поданнях; Я навіть не збираюся розпочинати роботу на Spannable .

Ви можете використовувати зовнішню утиліту шрифту, наприклад:

Каліграфічний інструмент для шрифту

АЛЕ Цього циклу на кожен погляд у програмі на його створення, і навіть ця утиліта не вистачає деяких поглядів (ViewPager видає звичайний шрифт), тоді у вас виникає проблема, коли Google оновлює свої інструменти побудови, це час від часу вийде з ладу, оскільки їй потрібно націлити застарілі властивості. Це також трохи повільно, оскільки він використовує відображення Java .

Google дійсно вирішує це. Нам потрібна краща підтримка шрифту в Android. Якщо ви подивитесь на рішення з iOS, у них буквально є 100 вбудованих шрифтів для вибору. Хочете користувацький шрифт? Просто впустіть TFF і він є корисним.

На сьогоднішній день обмежилися пропозицією, яку пропонує нам Google, яка є надзвичайно обмеженою, але, на щастя, оптимізованою для мобільних пристроїв.


2

Не забудьте вставити вищевказаний код у onCreate () після вашого дзвінка до супер та виклику setContentView (). Ця маленька деталь тримала мене повішеною на деякий час.


2

З Android 8.0 за допомогою користувацьких шрифтів у програмі стало легко downloadable fonts. Ми можемо додавати шрифти безпосередньо res/font/ folderв папку проекту, і при цьому шрифти стають автоматично доступними в Android Studio.

Папка В розділі "Res" з шрифтом імені та введіть шрифт

Тепер встановіть fontFamilyатрибут списку шрифтів або натисніть на більше та виберіть шрифт на ваш вибір. Це додасть tools:fontFamily="@font/your_font_file"рядок у ваш TextView.

Це автоматично генерує декілька файлів.

1. У папці значень вона створить fonts_certs.xml.

2. У Manifest він додасть наступні рядки:

  <meta-data
            android:name="preloaded_fonts"
            android:resource="@array/preloaded_fonts" /> 

3. preloaded_fonts.xml

<resources>
    <array name="preloaded_fonts" translatable="false">
        <item>@font/open_sans_regular</item>
        <item>@font/open_sans_semibold</item>
    </array>
</resources>

2

Ви можете використовувати легку та просту бібліотеку сторонніх програм EasyFonts, щоб встановити різноманітні спеціальні шрифти для своїх TextView. Використовуючи цю бібліотеку, вам не доведеться турбуватися про завантаження та додавання шрифтів у папку активів / шрифтів. Також про створення об'єктів Typeface.

Замість

Typeface myTypeface = Typeface.createFromAsset(getAssets(), "fonts/myFont.ttf");
TextView myTextView = (TextView)findViewById(R.id.myTextView);
myTextView.setTypeface(myTypeface);

Просто:

TextView myTextView = (TextView)findViewById(R.id.myTextView);
myTextView.setTypeface(EasyFonts.robotoThin(this));

Ця бібліотека також забезпечує наступне обличчя шрифту.

  • Робото
  • Droid Serif
  • Droid Robot
  • Свобода
  • Fun Raiser
  • Android Nation
  • Зелений авокадо
  • Визнання

1

У мене була така ж проблема, TTF не з’являвся. Я змінив файл шрифту, і з тим же кодом він працює.


1

Якщо ви хочете завантажити шрифт з мережі або легко стилювати його, ви можете використовувати:

https://github.com/shellum/fontView

Приклад:

<!--Layout-->
<com.finalhack.fontview.FontView
        android:id="@+id/someFontIcon"
        android:layout_width="80dp"
        android:layout_height="80dp" />

//Java:
fontView.setupFont("http://blah.com/myfont.ttf", true, character, FontView.ImageType.CIRCLE);
fontView.addForegroundColor(Color.RED);
fontView.addBackgroundColor(Color.WHITE);

1

Що ж, через сім років ви можете легко змінити цілий додаток textViewабо те, що хочете, використовуючиandroid.support бібліотеки 26 ++.

Наприклад:

Створіть додаток для пакету шрифтів / src / res / font та перемістіть у ньому свій шрифт.

введіть тут опис зображення

А в тему додатка просто додайте його як шрифтFamily:

    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
   . . . ...
    <item name="android:fontFamily">@font/demo</item>
</style>

Приклад для використання textViewлише:

<style name="fontTextView" parent="@android:style/Widget.TextView">
    <item name="android:fontFamily">monospace</item>
</style>

І додайте до своєї основної теми:

<item name="android:textViewStyle">@style/fontTextView</item>

В даний час він працює на 8.1 до 4.1 API Jelly Bean. І це широкий діапазон.


1

Оновити відповідь: Android 8.0 (API рівень 26) представляє нову функцію, шрифти в XML. просто використовуйте функцію Fonts in XML на пристроях під керуванням Android 4.1 (рівень API 16) і новіших, використовуйте Бібліотеку підтримки 26.

дивіться це посилання


Стара відповідь

Є два способи налаштування шрифтів:

!!! мій спеціальний шрифт в активах / шрифтах / iran_sans.ttf



Спосіб 1: Reflation Typeface.class ||| Кращий спосіб

виклик FontsOverride.setDefaultFont () у класі розширює додаток. Цей код призведе до зміни всіх програмних шрифтів, навіть Tost Tost

AppController.java

public class AppController extends Application {

    @Override
    public void onCreate() {
        super.onCreate();

        //Initial Font
        FontsOverride.setDefaultFont(getApplicationContext(), "MONOSPACE", "fonts/iran_sans.ttf");

    }
}

FontsOverride.java

public class FontsOverride {

    public static void setDefaultFont(Context context, String staticTypefaceFieldName, String fontAssetName) {
        final Typeface regular = Typeface.createFromAsset(context.getAssets(), fontAssetName);
        replaceFont(staticTypefaceFieldName, regular);
    }

    private static void replaceFont(String staticTypefaceFieldName, final Typeface newTypeface) {
        try {
            final Field staticField = Typeface.class.getDeclaredField(staticTypefaceFieldName);
            staticField.setAccessible(true);
            staticField.set(null, newTypeface);
        } catch (NoSuchFieldException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }
    }
}



Спосіб 2: використовуйте setTypeface

для спеціального перегляду просто зателефонуйте setTypeface (), щоб змінити шрифт.

CTextView.java

public class CTextView extends TextView {

    public CTextView(Context context) {
        super(context);
        init(context,null);
    }

    public CTextView(Context context, @Nullable AttributeSet attrs) {
        super(context, attrs);
        init(context,attrs);
    }

    public CTextView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        init(context,attrs);
    }

    @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
    public CTextView(Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) {
        super(context, attrs, defStyleAttr, defStyleRes);
        init(context,attrs);
    }

    public void init(Context context, @Nullable AttributeSet attrs) {

        if (isInEditMode())
            return;

        // use setTypeface for change font this view
        setTypeface(FontUtils.getTypeface("fonts/iran_sans.ttf"));

    }
}

FontUtils.java

public class FontUtils {

    private static Hashtable<String, Typeface> fontCache = new Hashtable<>();

    public static Typeface getTypeface(String fontName) {
        Typeface tf = fontCache.get(fontName);
        if (tf == null) {
            try {
                tf = Typeface.createFromAsset(AppController.getInstance().getApplicationContext().getAssets(), fontName);
            } catch (Exception e) {
                e.printStackTrace();
                return null;
            }
            fontCache.put(fontName, tf);
        }
        return tf;
    }

}



0
  • Відкрийте проект і виберіть Проект у верхньому лівому куті
  • додаток -> src -> головний
  • клацніть правою кнопкою миші для основного та створіть ім'я каталогів як актив
  • клацніть правою кнопкою миші, щоб визначити і створити нову назву каталогу шрифти
  • вам потрібно знайти безкоштовні шрифти, як безкоштовні шрифти
  • відправте його у Textview і зателефонуйте у клас занять
  • скопіюйте свої шрифти у папку шрифтів
  • TextView txt = (TextView) findViewById(R.id.txt_act_spalsh_welcome); Typeface font = Typeface.createFromAsset(getAssets(), "fonts/Aramis Italic.ttf"); txt.setTypeface(font);

Назва шрифту повинна бути правильною і веселитися


0

Так, як можна сказати Dipali , шрифти, які можна завантажити, так легко .

Ось як ви це робите ...

  1. Місце а TextView.
  2. На панелі властивостей виберіть fontFamilyспадне меню. Якщо його там немає, знайдіть потрібну річ (і натисніть на неї, щоб розгорнути textAppearance) під пунктом.
  3. Розгорніть font-familyспадне меню.
  4. У маленькому списку прокрутіть всю дорогу донизу, поки не побачите more fonts
  5. Це відкриє діалогове вікно, з якого можна здійснювати пошук Google Fonts
  6. Шукайте потрібний вам шрифт на панелі пошуку вгорі
  7. Виберіть свій шрифт.
  8. Виберіть стиль шрифту, який вам подобається (наприклад, жирний, звичайний, курсивний тощо)
  9. На правій панелі виберіть перемикач із написом Add font to project
  10. Клацніть гаразд. Тепер ваш TextView має потрібний вам шрифт!

БОНУС: Якщо ви хочете стилювати ВСЕ з текстом у програмі обраним шрифтом, просто додайте <item name="android:fontfamily">@font/fontnamehere</item>у свійstyles.xml


ви повинні оцінити мою відповідь, ніж! :)
Dipali s.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.