Flutter: Application's locale is not supported by all of its localization delegates

8,778

You can implement your custom MaterialLocalizations delegate

class MaterialLocalizationKaDelegate extends LocalizationsDelegate<MaterialLocalizations> {
  @override
  bool isSupported(Locale locale) {
    return locale.countryCode == "GE" && locale.languageCode == "ka";
  }

  @override
  Future<MaterialLocalizations> load(Locale locale) async {
    return MaterialLocalizationKa();
  }

  @override
  bool shouldReload(Foo old) {
    return false;
  }
}

class MaterialLocalizationKa extends MaterialLocalizations {
  // TODO: implement KA localization yourself
}
Share:
8,778
Tornike Kurdadze
Author by

Tornike Kurdadze

Updated on November 20, 2022

Comments

  • Tornike Kurdadze
    Tornike Kurdadze over 1 year

    Hello I am trying add BottomNavigationBar in flutter app but when i run project error occures :

    A MaterialLocalizations delegate that supports the ka_GE locale was not found
    

    This is my app delegates:

      supportedLocales: [
        const Locale('en', 'US'),
        const Locale('ka', 'GE'),
        const Locale('ru', 'RU'),
      ],
      localizationsDelegates: [
        const InfosLocalizationsDelegate(),
        GlobalMaterialLocalizations.delegate,
        GlobalWidgetsLocalizations.delegate
      ],
      locale: Locale('ka')
    

    This is Custom LocalizationsDelegate:

    class CLocalizationsDelegate
        extends LocalizationsDelegate<CLocalizations> {
      const CLocalizationsDelegate();
    
      @override
      bool isSupported(Locale locale) =>
          ['en', 'ka', 'ru'].contains(locale.languageCode);
    
      @override
      Future<CLocalizations> load(Locale locale) async {
        CLocalizations localizations = new CLocalizations(locale);
        await localizations.load();
        print("Load ${locale.languageCode}");
        return localizations;
      }
    
      @override
      bool shouldReload(CLocalizationsDelegate old) => false;
    }
    

    Yeah I know that the problem is 'ka' because MaterialLocalizations doesn't not supports it but I have to solve that problem, so guys can you help me out?

  • Javeed Ishaq
    Javeed Ishaq over 2 years
    Kindly guide how to make use of this code
  • Javeed Ishaq
    Javeed Ishaq over 2 years
  • Ulysses Alves
    Ulysses Alves about 2 years
    Can I just ignore this error in case my app has not been internationalized yet?