button - Flutter中如何改变按钮主题的文字颜色
问题描述
如果我像这样向我的应用程序添加主题:
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
theme: ThemeData(
primaryColor: Color(0xff393e46),
primaryColorDark: Color(0xff222831),
accentColor: Color(0xff00adb5),
backgroundColor: Color(0xffeeeeee),
buttonTheme: ButtonThemeData(
buttonColor: Color(0xff00adb5),
)
),
home: Scaffold(
body: MyHomePage(),
),
);
}
}
如何更改按钮主题的文本颜色?
解决方案
如果你使用ButtonTextTheme.primary
Flutter 会自动为你选择合适的颜色。
例如,如果你buttonColor
像这样制作黑暗
ThemeData(
. . .
buttonTheme: ButtonThemeData(
buttonColor: Colors.deepPurple, // <-- dark color
textTheme: ButtonTextTheme.primary, // <-- this auto selects the right color
)
),
文字自动变亮。如果你使buttonColor
光,那么文字是黑暗的。
ThemeData(
. . .
buttonTheme: ButtonThemeData(
buttonColor: Colors.yellow, // <-- light color
textTheme: ButtonTextTheme.primary, // <-- dark text for light background
)
),
推荐阅读
- django - 如何在 Django 中创建更新表单表
- c - 圆括号中的 C 函数
- python - 从各个距离创建距离矩阵
- javascript - 在 Firebase 中访问布尔值
- node.js - 如何在 Google 的 OAuth 客户端 ID 中创建应用程序类型“其他”
- reactjs - Gatsby 在客户端添加动态页面
- arrays - 使用 vuejs 和 laravel 中的 .map() 函数从另一个数组列中的数据创建新数组
- java - 我尝试打开 Android Studio 但没有打开?
- node.js - 在 Node.js 和 MongoDB 中无法通过此查询获得所有信息
- c# - 如何在 Unity 中全部用代码创建 2D 动画序列?