language.dart 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import 'package:flutter/material.dart';
  2. String languageFromLocale(Locale locale) {
  3. switch (locale.languageCode) {
  4. // Most often used languages
  5. case "en":
  6. return "English";
  7. case "zh":
  8. switch (locale.countryCode) {
  9. case "CN":
  10. return "简体中文";
  11. case "TW":
  12. return "繁體中文";
  13. default:
  14. return locale.languageCode;
  15. }
  16. // Then in alphabetical order
  17. case "ca":
  18. return "Català";
  19. case "de":
  20. return "Deutsch";
  21. case "es":
  22. return "Español";
  23. case "eu":
  24. return "Euskera";
  25. case "fr":
  26. switch (locale.countryCode) {
  27. case "CA":
  28. return "Français (CA)";
  29. case "FR":
  30. return "Français (FR)";
  31. default:
  32. return locale.languageCode;
  33. }
  34. case "hu":
  35. return "Magyar";
  36. case "id":
  37. return "Bahasa";
  38. case "it":
  39. return "Italiano";
  40. case "ja":
  41. return "日本語";
  42. case "ko":
  43. return "한국어";
  44. case "pl":
  45. return "Polski";
  46. case "pt":
  47. return "Português";
  48. case "ru":
  49. return "русский";
  50. case "sv":
  51. return "Svenska";
  52. case "tr":
  53. return "Türkçe";
  54. // If not found then the language code will be displayed
  55. default:
  56. return locale.languageCode;
  57. }
  58. }