flutter accentColor已弃用,不应使用

jljoyd4f  于 2023-04-22  发布在  Flutter
关注(0)|答案(6)|浏览(757)

ThemeData中的accentColor已弃用。
那么在ThemeData中使用什么呢?

theme: ThemeData(
    brightness: Brightness.light,
    primaryColor: kBaseColor,
    accentColor: kBaseAccentColor, // 'accentColor' is deprecated and shouldn't be used
3wabscal

3wabscal1#

使用下面的代码代替accentColor:kBaseAccentColor,

colorScheme: ColorScheme.fromSwatch()
            .copyWith(secondary: kBaseAccentColor),

用一种简单的方法来做:点击魔术灯泡

单击**迁移到'ColorScheme. secondary'**它将自动转换。

ktca8awb

ktca8awb2#

accentColor现在被ColorScheme.secondary取代。

*使用新的ThemeData

theme: ThemeData(
  colorScheme: ColorScheme.fromSwatch().copyWith(
    secondary: Colors.red, // Your accent color
  ),
)

*使用现有ThemeData

final theme = ThemeData.dark();

您可以将其用作:

theme: theme.copyWith(
  colorScheme: theme.colorScheme.copyWith(
    secondary: Colors.red,
  ),
)
oyxsuwqo

oyxsuwqo3#

正如已弃用的消息所说:

///colorScheme.secondary
 ThemeData(colorScheme: ColorScheme(secondary:Colors.white ),);
63lcw9qa

63lcw9qa4#

迁移前的代码:
Color myColor = Theme.of(context).accentColor;
迁移后的代码:
Color myColor = Theme.of(context).colorScheme.secondary;

muk1a3rh

muk1a3rh5#

写下这个:

colorScheme: ColorScheme.fromSwatch()
            .copyWith(secondary: kBaseAccentColor),

然后,使用
colorScheme.secondary
代替
accentColor
到处都是

7ivaypg9

7ivaypg96#

你需要添加一个配色方案,因为强调色已被弃用。

body: const Center(child: const Text('BMI Calculator')),
  floatingActionButton: Theme(
    data: ThemeData(
      colorScheme:
          ColorScheme.fromSwatch().copyWith(secondary: Colors.white),
    ),
    child: FloatingActionButton(
      child: const Icon(
        Icons.add,
      ),
      onPressed: () {},
    ),
  ),

相关问题