更新至 Flutter 3.22,卡片和导航栏背景中不显示颜色

问题描述 投票:0回答:1

我刚刚将两个应用程序更新到 Flutter 3.22,卡片和底部导航栏的颜色消失了。现在这些元素的背景颜色是透明的。有什么解决办法吗?

正如我在发行说明中看到的那样,他们对主题进行了更改,但没有什么会影响它。

我尝试使用新的材质主题生成器更新主题,但没有任何变化。

这是小部件的示例代码:

@override
  Widget build(BuildContext context) {
    return Card(
      shape: RoundedRectangleBorder(
        borderRadius: BorderRadius.circular(12),
      ),
      child: InkWell(
        onTap: () {
          // [...]
        },
        borderRadius: BorderRadius.circular(12),
        child: Padding(
            padding: const EdgeInsets.all(18.0),
            child: Column(
              crossAxisAlignment: CrossAxisAlignment.start,
              children: [
                // List of widgets like ListTiles, rows of text, etc
              ],
            )),
      ),
    );
  }

这是其中一张卡片,但问题在于涉及

Theme.of(context).colorScheme.surfaceTint
的所有小部件。我认为更新有一些错误。

flutter themes
1个回答
0
投票

我发现问题了!该主题由官方 Material Theme Builder 网站提供,并且似乎该构建器缺少一些参数

在生成的文件中,参数

surfaceContainerLow
和其他参数未在
toColorScrheme()
类内的
MaterialTheme
函数中声明。

我自己将这些参数添加到构建器函数中,现在一切正常!

© www.soinside.com 2019 - 2024. All rights reserved.