我想在我的主题中设置一个颜色为原色。当原色改变时,其他颜色也应该改变。
我知道如何为主题中的任何颜色指定一个硬编码的颜色,但我不知道如何动态地引用原色。
我是这么做的:
import 'package:flutter/material.dart';
void main() => runApp(MaterialApp(
theme: ThemeData(
useMaterial3: true,
textTheme: const TextTheme(titleLarge: TextStyle(color: Colors.black)),
),
home: const MyHomePage(),
));
class MyHomePage extends StatelessWidget {
const MyHomePage({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
body: Text('ok', style: Theme.of(context).textTheme.titleLarge),
);
}
}
字符串
是否可以参考原色而不是设置黑色?
3条答案
按热度按时间lf5gs5x21#
您可以创建自己的
ThemeData
子类,并覆盖相应颜色的getter,以返回原色。字符串
并在运行应用程序时使用它
型
au9on6nz2#
我发现改变文本颜色的唯一方法如下:
字符串
oknwwptz3#
文档:https://docs.flutter.dev/cookbook/design/themes
字符串
请记住:* 从Flutter 3.16版本开始,Material 3是Flutter的默认主题。