如何在主题数据中设置多种颜色



这是我的代码:

static final darkTheme = ThemeData(
textTheme: GoogleFonts.rubikTextTheme()
.apply(bodyColor: Color(0xFFf2f2f2), displayColor: Color(0xFFf2f2f2))
.copyWith(bodyText1: TextStyle(color: Colors.greenAccent)),
scaffoldBackgroundColor: Color(0xFF1f1f1f),
primaryColor: Color(0xFF474747),
colorScheme: ColorScheme.dark(
primaryContainer: Color(0xFF282828),
secondaryContainer: Color(0xFF3D3D3D)),
iconTheme: IconThemeData(color: Color(0xFFf2f2f2)),
primaryIconTheme: IconThemeData(color: Color(0xFFf2f2f2)),
hintColor: Color(0xFFf2f2f2),
backgroundColor: Color(0xFFd9d9d9),
dividerColor: Color(0xFFf2f2f2));

我想在textTheme中设置多种颜色,但我如何知道我应该使用哪个TextStyle属性?在这种情况下,我有短信说";打开";我希望它是绿色深色模式下的Accent和浅色模式下的绿色,这里我使用bodyText1,但绿色应用于其他文本,而不是";打开";文本

我应该尝试从displayLarge到overline的每个属性,以找到文本着色的属性吗。我不确定我用的是不是用对了。即使我用这种方法找到了它,我也认为它是错误的。我使用.apply将大多数文本着色为白色

检查

MaterialApp(
title: appName,
theme: ThemeData(
// Define the default brightness and colors.
brightness: Brightness.dark,
primaryColor: Colors.lightBlue[800],
// Define the default font family.
fontFamily: 'Georgia',
// Define the default `TextTheme`. Use this to specify the default
// text styling for headlines, titles, bodies of text, and more.
textTheme: const TextTheme(
headline1: TextStyle(fontSize: 72.0, fontWeight: FontWeight.bold),
headline6: TextStyle(fontSize: 36.0, fontStyle: FontStyle.italic),
bodyText2: TextStyle(fontSize: 14.0, fontFamily: 'Hind'),
),
),
home: const MyHomePage(
title: appName,
),
);

不要使用Text小部件,而是使用RichText小部件。它可以让你的生活变得非常轻松。只需查找RichText。

相关内容

  • 没有找到相关文章

最新更新