4

设置

在颤振应用程序的主类中:

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData(
        brightness: Brightness.dark,
      ),
      home: Scaffold(
        body: Example(),
      ),
    );
  }
}

您可以将ThemeData亮度设置为暗或亮。(我认为仅从 Android OS 10.0,API 29 开始)您可以在设备设置中选择屏幕色调(浅色 | 深色)。

示例(OP7 专业版)

设置 > 自定义 > 色调 > 多彩 | 浅色 |深色

当处于暗模式并打开某些应用程序(例如 chrome)时,应用程序设置为暗。打开其他应用程序不会发生这种情况。

问题:

1)如果您不设置任何ThemeData亮度,您的应用程序亮度是否会根据设备色调设置动态更新?(不能自己测试这个atm)

2)如果不是,您如何ThemeData根据设备屏幕色调设置动态更改亮度?

4

1 回答 1

2

虽然仅支持 IOS 13 和 Android 10(api 级别 29),以及某些浏览器(Chrome、firefox、safari、edge)。

更多信息: https ://www.howtogeek.com/440920/browsers-are-bringing-automatic-dark-mode-to-websites/

对于那些想要实现这一点的人,Matt Carroll 先生对此发表了一篇博文: https ://medium.com/flutter/android-dark-theme-in-flutter-9c8070b8b127

颤振(飞镖) - 代码:

MaterialApp(
  theme: ThemeData(
    brightness: Brightness.light,
    primaryColor: Colors.red,
  ),
  darkTheme: ThemeData(
    brightness: Brightness.dark,
  ),
);
于 2019-10-18T12:31:10.020 回答