AppThemeData.dark constructor

AppThemeData.dark({
  1. Color primary = Colors.blue,
  2. Color secondary = Colors.cyan,
  3. Color tertiary = Colors.lightBlue,
  4. Color primaryContainer = Colors.blueAccent,
  5. Color secondaryContainer = Colors.cyanAccent,
  6. Color tertiaryContainer = Colors.lightBlueAccent,
  7. Color disabled = Colors.grey,
  8. Color weak = Colors.grey,
  9. Color outline = Colors.grey,
  10. Color? outlineVariant,
  11. Color error = Colors.red,
  12. Color warning = Colors.amber,
  13. Color info = Colors.blue,
  14. Color success = Colors.green,
  15. Color? surface,
  16. Color? surfaceVariant,
  17. Color? background,
  18. Color onPrimary = kWhiteColor,
  19. Color onSecondary = kWhiteColor,
  20. Color onTertiary = kWhiteColor,
  21. Color onPrimaryContainer = kWhiteColor,
  22. Color onSecondaryContainer = kWhiteColor,
  23. Color onTertiaryContainer = kWhiteColor,
  24. Color onDisabled = kWhiteColor,
  25. Color? onSurface,
  26. Color? onSurfaceVariant,
  27. Color? onBackground,
  28. Color onWeak = kWhiteColor,
  29. Color onError = kWhiteColor,
  30. Color onInfo = kWhiteColor,
  31. Color onSuccess = kWhiteColor,
  32. Color onWarning = kWhiteColor,
  33. Color splashColor = kSplashColor,
  34. Color shadow = Colors.black,
  35. Color? appBarColor,
  36. Color? onAppBarColor,
  37. Color? onExpandedAppBarColor,
  38. Color? scaffoldBackgroundColor,
  39. Color? dialogColor,
  40. Color? onDialogColor,
  41. Color? inversePrimary,
  42. Color? inverseSecondary,
  43. Color? inverseTertiary,
  44. Color? inversePrimaryContainer,
  45. Color? inverseSecondaryContainer,
  46. Color? inverseTertiaryContainer,
  47. Color? inverseDisabled,
  48. Color? inverseWeak,
  49. Color? inverseOutline,
  50. Color? inverseError,
  51. Color? inverseWarning,
  52. Color? inverseInfo,
  53. Color? inverseSuccess,
  54. Color? inverseSurface,
  55. Color? inverseBackground,
  56. Color? onInversePrimary,
  57. Color? onInverseSecondary,
  58. Color? onInverseTertiary,
  59. Color? onInversePrimaryContainer,
  60. Color? onInverseSecondaryContainer,
  61. Color? onInverseTertiaryContainer,
  62. Color? onInverseDisabled,
  63. Color? onInverseSurface,
  64. Color? onInverseBackground,
  65. Color? onInverseWeak,
  66. Color? onInverseError,
  67. Color? onInverseInfo,
  68. Color? onInverseSuccess,
  69. Color? onInverseWarning,
  70. Color? inverseSplashColor,
  71. Color? inverseShadow,
  72. Color? inverseAppBarColor,
  73. Color? onInverseAppBarColor,
  74. Color? onInverseExpandedAppBarColor,
  75. Color? inverseScaffoldBackgroundColor,
  76. Color? inverseDialogColor,
  77. Color? onInverseDialogColor,
  78. ThemeMode themeMode = ThemeMode.system,
  79. TextStyle displayLarge = const TextStyle(fontSize: 57, fontWeight: FontWeight.w400, leadingDistribution: TextLeadingDistribution.even),
  80. TextStyle displayMedium = const TextStyle(fontSize: 45, fontWeight: FontWeight.w400, leadingDistribution: TextLeadingDistribution.even),
  81. TextStyle displaySmall = const TextStyle(fontSize: 36, fontWeight: FontWeight.w400, leadingDistribution: TextLeadingDistribution.even),
  82. TextStyle headlineLarge = const TextStyle(fontSize: 32, fontWeight: FontWeight.w400, height: 1.25, leadingDistribution: TextLeadingDistribution.proportional),
  83. TextStyle headlineMedium = const TextStyle(fontSize: 28, fontWeight: FontWeight.w400, height: 1.29, leadingDistribution: TextLeadingDistribution.proportional),
  84. TextStyle headlineSmall = const TextStyle(fontSize: 24, fontWeight: FontWeight.w400, height: 1.33, leadingDistribution: TextLeadingDistribution.proportional),
  85. TextStyle titleLarge = const TextStyle(fontSize: 22, fontWeight: FontWeight.w500, leadingDistribution: TextLeadingDistribution.even),
  86. TextStyle titleMedium = const TextStyle(fontSize: 16, fontWeight: FontWeight.w500, leadingDistribution: TextLeadingDistribution.even),
  87. TextStyle titleSmall = const TextStyle(fontSize: 14, fontWeight: FontWeight.w500, leadingDistribution: TextLeadingDistribution.even),
  88. TextStyle bodyLarge = const TextStyle(fontSize: 16, fontWeight: FontWeight.w400, leadingDistribution: TextLeadingDistribution.even),
  89. TextStyle bodyMedium = const TextStyle(fontSize: 14, fontWeight: FontWeight.w400, leadingDistribution: TextLeadingDistribution.even),
  90. TextStyle bodySmall = const TextStyle(fontSize: 12, fontWeight: FontWeight.w400, leadingDistribution: TextLeadingDistribution.even),
  91. TextStyle labelLarge = const TextStyle(fontSize: 14, fontWeight: FontWeight.w500, leadingDistribution: TextLeadingDistribution.even),
  92. TextStyle labelMedium = const TextStyle(fontSize: 12, fontWeight: FontWeight.w500, leadingDistribution: TextLeadingDistribution.even),
  93. TextStyle labelSmall = const TextStyle(fontSize: 11, fontWeight: FontWeight.w500, leadingDistribution: TextLeadingDistribution.even),
  94. double fontSizeFactor = 1.0,
  95. double fontSizeDelta = 0.0,
  96. String? defaultFontFamily,
  97. bool useMaterial3 = true,
  98. TargetPlatform platform = TargetPlatform.iOS,
  99. bool? centerTitleOnAppBar,
  100. Brightness? statusBarBrightnessOnIOS,
  101. Brightness? statusBarBrightnessOnAndroid,
  102. bool fixed = false,
})

The dark theme defines the initial color.

ダークテーマで初期色を定義しています。

Set the theme of the application.

ColorScheme and TextTheme of MaterialDesign3 can be specified.

You can use context.theme to get this value, or you can pass ThemeData converted by toThemeData to MaterialApp and other widgets in Flutter.

ColorScheme can be obtained by color. TextTheme can be obtained by text. widget allows you to retrieve the theme used for the widget. In asset, you can get the assets of the application specified in pubspec.yaml. You can get the font of the app specified in pubspec.yaml at font.

You can also set up your own theme by extending ColorThemeData, TextThemeData, WidgetThemeData, AssetThemeData, and FontThemeData with extensions, respectively.

アプリのテーマを設定します。

MaterialDesign3のColorSchemeTextThemeを指定することが可能です。

context.themeでこの値を取得できる様になっている他、MaterialApp等にtoThemeDataで変換したThemeDataを渡すことでFlutter内の各種ウィジェットに伝えることができます。

colorColorSchemeを取得することができます。textTextThemeを取得することができます。widgetでウィジェットで使うテーマを取得することができます。assetでpubspec.yamlで指定したアプリのアセットを取得することができます。fontでpubspec.yamlで指定したアプリのフォントを取得することができます。

またそれぞれColorThemeDataTextThemeDataWidgetThemeDataAssetThemeDataFontThemeDataをエクステンションで拡張することにより独自のテーマを設定することも可能です。

See also:

Implementation

AppThemeData.dark({
  Color primary = Colors.blue,
  Color secondary = Colors.cyan,
  Color tertiary = Colors.lightBlue,
  Color primaryContainer = Colors.blueAccent,
  Color secondaryContainer = Colors.cyanAccent,
  Color tertiaryContainer = Colors.lightBlueAccent,
  Color disabled = Colors.grey,
  Color weak = Colors.grey,
  Color outline = Colors.grey,
  Color? outlineVariant,
  Color error = Colors.red,
  Color warning = Colors.amber,
  Color info = Colors.blue,
  Color success = Colors.green,
  Color? surface,
  Color? surfaceVariant,
  Color? background,
  Color onPrimary = kWhiteColor,
  Color onSecondary = kWhiteColor,
  Color onTertiary = kWhiteColor,
  Color onPrimaryContainer = kWhiteColor,
  Color onSecondaryContainer = kWhiteColor,
  Color onTertiaryContainer = kWhiteColor,
  Color onDisabled = kWhiteColor,
  Color? onSurface,
  Color? onSurfaceVariant,
  Color? onBackground,
  Color onWeak = kWhiteColor,
  Color onError = kWhiteColor,
  Color onInfo = kWhiteColor,
  Color onSuccess = kWhiteColor,
  Color onWarning = kWhiteColor,
  Color splashColor = kSplashColor,
  Color shadow = Colors.black,
  Color? appBarColor,
  Color? onAppBarColor,
  Color? onExpandedAppBarColor,
  Color? scaffoldBackgroundColor,
  Color? dialogColor,
  Color? onDialogColor,
  Color? inversePrimary,
  Color? inverseSecondary,
  Color? inverseTertiary,
  Color? inversePrimaryContainer,
  Color? inverseSecondaryContainer,
  Color? inverseTertiaryContainer,
  Color? inverseDisabled,
  Color? inverseWeak,
  Color? inverseOutline,
  Color? inverseError,
  Color? inverseWarning,
  Color? inverseInfo,
  Color? inverseSuccess,
  Color? inverseSurface,
  Color? inverseBackground,
  Color? onInversePrimary,
  Color? onInverseSecondary,
  Color? onInverseTertiary,
  Color? onInversePrimaryContainer,
  Color? onInverseSecondaryContainer,
  Color? onInverseTertiaryContainer,
  Color? onInverseDisabled,
  Color? onInverseSurface,
  Color? onInverseBackground,
  Color? onInverseWeak,
  Color? onInverseError,
  Color? onInverseInfo,
  Color? onInverseSuccess,
  Color? onInverseWarning,
  Color? inverseSplashColor,
  Color? inverseShadow,
  Color? inverseAppBarColor,
  Color? onInverseAppBarColor,
  Color? onInverseExpandedAppBarColor,
  Color? inverseScaffoldBackgroundColor,
  Color? inverseDialogColor,
  Color? onInverseDialogColor,
  ThemeMode themeMode = ThemeMode.system,
  TextStyle displayLarge = const TextStyle(
    fontSize: 57,
    fontWeight: FontWeight.w400,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  TextStyle displayMedium = const TextStyle(
    fontSize: 45,
    fontWeight: FontWeight.w400,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  TextStyle displaySmall = const TextStyle(
    fontSize: 36,
    fontWeight: FontWeight.w400,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  TextStyle headlineLarge = const TextStyle(
    fontSize: 32,
    fontWeight: FontWeight.w400,
    height: 1.25,
    leadingDistribution: TextLeadingDistribution.proportional,
  ),
  TextStyle headlineMedium = const TextStyle(
    fontSize: 28,
    fontWeight: FontWeight.w400,
    height: 1.29,
    leadingDistribution: TextLeadingDistribution.proportional,
  ),
  TextStyle headlineSmall = const TextStyle(
    fontSize: 24,
    fontWeight: FontWeight.w400,
    height: 1.33,
    leadingDistribution: TextLeadingDistribution.proportional,
  ),
  TextStyle titleLarge = const TextStyle(
    fontSize: 22,
    fontWeight: FontWeight.w500,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  TextStyle titleMedium = const TextStyle(
    fontSize: 16,
    fontWeight: FontWeight.w500,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  TextStyle titleSmall = const TextStyle(
    fontSize: 14,
    fontWeight: FontWeight.w500,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  TextStyle bodyLarge = const TextStyle(
    fontSize: 16,
    fontWeight: FontWeight.w400,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  TextStyle bodyMedium = const TextStyle(
    fontSize: 14,
    fontWeight: FontWeight.w400,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  TextStyle bodySmall = const TextStyle(
    fontSize: 12,
    fontWeight: FontWeight.w400,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  TextStyle labelLarge = const TextStyle(
    fontSize: 14,
    fontWeight: FontWeight.w500,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  TextStyle labelMedium = const TextStyle(
    fontSize: 12,
    fontWeight: FontWeight.w500,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  TextStyle labelSmall = const TextStyle(
    fontSize: 11,
    fontWeight: FontWeight.w500,
    leadingDistribution: TextLeadingDistribution.even,
  ),
  double fontSizeFactor = 1.0,
  double fontSizeDelta = 0.0,
  String? defaultFontFamily,
  bool useMaterial3 = true,
  TargetPlatform platform = TargetPlatform.iOS,
  bool? centerTitleOnAppBar,
  Brightness? statusBarBrightnessOnIOS,
  Brightness? statusBarBrightnessOnAndroid,
  bool fixed = false,
}) : this(
        primary: primary,
        secondary: secondary,
        tertiary: tertiary,
        primaryContainer: primaryContainer,
        secondaryContainer: secondaryContainer,
        tertiaryContainer: tertiaryContainer,
        disabled: disabled,
        weak: weak,
        outline: outline,
        outlineVariant: outlineVariant,
        error: error,
        warning: warning,
        info: info,
        success: success,
        surface: surface,
        surfaceVariant: surfaceVariant,
        background: background,
        onPrimary: onPrimary,
        onSecondary: onSecondary,
        onTertiary: onTertiary,
        onPrimaryContainer: onPrimaryContainer,
        onSecondaryContainer: onSecondaryContainer,
        onTertiaryContainer: onTertiaryContainer,
        onDisabled: onDisabled,
        onSurface: onSurface,
        onSurfaceVariant: onSurfaceVariant,
        onBackground: onBackground,
        onWeak: onWeak,
        onError: onError,
        onInfo: onInfo,
        onSuccess: onSuccess,
        onWarning: onWarning,
        splashColor: splashColor,
        shadow: shadow,
        appBarColor: appBarColor,
        onAppBarColor: onAppBarColor,
        onExpandedAppBarColor: onExpandedAppBarColor,
        scaffoldBackgroundColor: scaffoldBackgroundColor,
        dialogColor: dialogColor,
        onDialogColor: onDialogColor,
        inversePrimary: inversePrimary,
        inverseSecondary: inverseSecondary,
        inverseTertiary: inverseTertiary,
        inversePrimaryContainer: inversePrimaryContainer,
        inverseSecondaryContainer: inverseSecondaryContainer,
        inverseTertiaryContainer: inverseTertiaryContainer,
        inverseDisabled: inverseDisabled,
        inverseWeak: inverseWeak,
        inverseOutline: inverseOutline,
        inverseError: inverseError,
        inverseWarning: inverseWarning,
        inverseInfo: inverseInfo,
        inverseSuccess: inverseSuccess,
        inverseSurface: inverseSurface,
        inverseBackground: inverseBackground,
        onInversePrimary: onInversePrimary,
        onInverseSecondary: onInverseSecondary,
        onInverseTertiary: onInverseTertiary,
        onInversePrimaryContainer: onInversePrimaryContainer,
        onInverseSecondaryContainer: onInverseSecondaryContainer,
        onInverseTertiaryContainer: onInverseTertiaryContainer,
        onInverseDisabled: onInverseDisabled,
        onInverseSurface: onInverseSurface,
        onInverseBackground: onInverseBackground,
        onInverseWeak: onInverseWeak,
        onInverseError: onInverseError,
        onInverseInfo: onInverseInfo,
        onInverseSuccess: onInverseSuccess,
        onInverseWarning: onInverseWarning,
        inverseSplashColor: inverseSplashColor,
        inverseShadow: inverseShadow,
        inverseAppBarColor: inverseAppBarColor,
        onInverseAppBarColor: onInverseAppBarColor,
        onInverseExpandedAppBarColor: onInverseExpandedAppBarColor,
        inverseScaffoldBackgroundColor: inverseScaffoldBackgroundColor,
        inverseDialogColor: inverseDialogColor,
        onInverseDialogColor: onInverseDialogColor,
        displayLarge: displayLarge,
        displayMedium: displayMedium,
        displaySmall: displaySmall,
        headlineLarge: headlineLarge,
        headlineMedium: headlineMedium,
        headlineSmall: headlineSmall,
        titleLarge: titleLarge,
        titleMedium: titleMedium,
        titleSmall: titleSmall,
        bodyLarge: bodyLarge,
        bodyMedium: bodyMedium,
        bodySmall: bodySmall,
        labelLarge: labelLarge,
        labelMedium: labelMedium,
        labelSmall: labelSmall,
        fontSizeFactor: fontSizeFactor,
        fontSizeDelta: fontSizeDelta,
        defaultFontFamily: defaultFontFamily,
        useMaterial3: useMaterial3,
        platform: platform,
        centerTitleOnAppBar: centerTitleOnAppBar,
        brightness: Brightness.dark,
        fixed: fixed,
        statusBarBrightnessOnIOS: statusBarBrightnessOnIOS,
        statusBarBrightnessOnAndroid: statusBarBrightnessOnAndroid,
        themeMode: themeMode,
      );