Подтвердить что ты не робот

Исходный шрифт среды выполнения Runtime не найден

Вот мой код и скриншот. Я пытаюсь установить собственный шрифт шрифта, но исключение Runtime возникает, если объект шрифта не найден, а файл шрифта находится в папке с ресурсами. Я что-то пропустил?

Typeface font = Typeface.createFromAsset(getAssets(), "font/terminal.ttf");
((TextView) findViewById(R.id.weatherHeadingTV)).setTypeface(font);

enter image description herescreenshot of android studio project

4b9b3361

Ответ 1

Я пробовал другой файл шрифта, который работал нормально. Поэтому я пришел к выводу, что предыдущий файл шрифта был поврежден. Спасибо @Miduhun MP, @Gowtham Raj и @jagan reddy

Ответ 2

имя папки должно быть 'шрифты не' font '

Typeface typeface = Typeface.createFromAsset(getAssets(), "fonts/" + font);

Ответ 3

Ваша папка с правами на ресурс названа неправильно. Вы должны указать папку как fonts не как font. Также измените свой код:

Typeface font = Typeface.createFromAsset(getAssets(), "fonts/terminal.ttf");

Ответ 4

  1. Имя папки должно быть "шрифтами", а не "шрифтом"
  2. Обратите внимание, что ваша папка "fonts" находится в папке "assets" (которая должна находиться в вашей "основной" папке, а не в папке "res"). Мне понадобилось слишком много времени, чтобы понять это...

Ответ 5

Если вы используете Instant Run с Android версии Gradle версии 2.2.0-alphaX, это известная ошибка.

Обходной путь заключается в том, чтобы запустить Instant Run до тех пор, пока проблема не будет решена.

Вы можете отследить его здесь: https://code.google.com/p/android/issues/detail?id=212849&can=1&q=subcomponent%3DTools-Studio%20-has%3Aproject%20attachments%3D0&colspec=ID%20Status%20Priority%20Owner%20Summary%20Stars%20Reporter%20Opened&start=7700

Ответ 6

Общая ошибка, когда у вас есть активы в вашем проекте, и вы используете альфа-версии AS. Кажется, это ошибка в системе сборки студий Android. Простым обходным решением является очистка проекта до его запуска, и это должно решить проблему, с которой вы сталкиваетесь.

Ответ 7

У меня была такая же проблема, и мне удалось ее исправить. Первоначально я думал, что файлы шрифтов были повреждены, но они не были. Затем я подумал, что Android Studio не понравилось .ttf файлов, потому что они были единственными, кто не работал. Оказывается, что шрифты не имеют ничего плохого.

ИСПРАВЛЕНИЕ: Просто нажмите Build > Clean project. Исправлено это для меня.

Ответ 8

Typeface typeface = Typeface.createFromAsset(this.getAssets(), "font/terminal.ttf" );

((TextView) findViewById (R.id.weatherHeadingTV)). setTypeface (шрифт);

Ответ 9

Если вы используете AndroidAnnotations, в app build.gradle убедитесь, что папка активов в порядке: ex: main/src/assets.

Если вы измените шрифт, удалите приложение с устройства/эмулятора и снова запустите.

Код:

public static void setFontFace(Context context, TextView textView) {
  Typeface type = Typeface.createFromAsset(context.getAssets(), "myfont.ttf");
  textView.setTypeface(type);
}

Ответ 10

У меня возникла проблема с тем, что шрифты .woff не принимаются на Android 7+. Поэтому я переключился на шрифты .ttf.

Ответ 11

Для меня сам файл шрифта был поврежден. Я попробовал еще один, чтобы он работал.

Ответ 12

используйте этот метод:

final Typeface typeface = ResourcesCompat.getFont(context, R.font.X);

Ответ 13

Я просмотрел весь ответ, но никто из них не работал у меня. После чтения документации я нашел новое решение. Ниже приведены следующие шаги:

  • Перейти в меню файлов
  • В новой версии перейдите в папку "Папка" и создайте папку с ресурсами
  • Вставьте файл шрифта в эту папку с ресурсами
  • Используйте в своем коде, используя атрибут Typeface.

    Тип шрифта = Typeface.createFromAsset(getAssets(), "myfont.ttf" ); textView.setTypeface(тип);

Теперь вы все настроены на использование шрифтов, которые вам нравятся.