Проблемы с добавлением пользовательских шрифтов в Flutter - PullRequest
0 голосов
/ 23 октября 2019

Я не получаю сообщение об ошибке при добавлении пользовательских шрифтов во Flutter, но он не применяет шрифт.

Я пробовал полную перестройку, переустановку и прочее, что читал из других похожих тем, нопока ничего не получалось. Вот часть моего pubspec.yaml

flutter:
  uses-material-design: true
  fonts:
    - family: Bauhaus
      fonts:
        - asset: fonts/Bauhaus.ttf

и вот пример кода ...

                        new TextSpan(
                          text: 'Started!', 
                          style: new TextStyle(
                            decoration: TextDecoration.none,
                            fontSize: 50.0,
                            fontFamily: "Bauhaus",
                            color: Colors.red,
                          ),
                        ),

Он работает с такими вещами по умолчанию, как "Times New Roman", но непользовательские шрифты.

1 Ответ

0 голосов
/ 23 октября 2019

вы не настроили тему после запуска основной функции

как это:

fonts:
    - family: SFUIText
      fonts:
        - asset: assets/fonts/SFUIText-Regular.ttf
        - asset: assets/fonts/SFUIText-Semibold.ttf
          weight: 600
        - asset: assets/fonts/SFUIText-RegularItalic.ttf
          style: italic


final app = MaterialApp(
      theme: ThemeData(
          primaryIconTheme: const IconThemeData(color: mColorIcon),
          primaryColor: mColorPrimary,
          accentColor: mColorAccent,
          backgroundColor: mColorBackground,
          indicatorColor: mColorPrimary,
          splashColor: mColorPrimary,
          canvasColor: mColorCanvas,
          appBarTheme: Styles.appBar,
          fontFamily: 'SFUIText',
          textTheme: TextTheme(
              title: Styles.title,
              body1: Styles.textSecondary,
              body2: Styles.textSecondaryBold,
              headline: Styles.headline,
              subhead: Styles.subHeading,
              button: Styles.button,
              overline: Styles.overline)), ...);
...