我想知道AppBar文本的 colored颜色 :

import 'package:flutter/material.dart';

void main() => runApp(const MaterialApp(
      home: MyHomePage(),
    ));

class MyHomePage extends StatelessWidget {
  const MyHomePage({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    print(Theme.of(context).appBarTheme.foregroundColor); // null
    print(Theme.of(context)
        .colorScheme
        .onPrimary); // Color(0xffffffff) - wrong: text is black not white
    return const Scaffold(
      body: Text('ok'),
    );
  }
}

我该怎么办?

推荐答案

当我们没有为appBarTheme提供任何主题数据时,它将默认使用textTheme.titleLarge来获取 colored颜色 使用

Theme.of(context).textTheme.titleLarge?.color;

按如下方式记录的titleTextStyle

如果此属性为空,则使用[ThemeData.appBarTheme]的[AppBarTheme.tileTextStyle].

如果也为空,则默认为整体主题的[TextTheme.tileLarge][TextStyle]的副本,并将 colored颜色 设置为应用程序栏的[forecoundColor].

Flutter相关问答推荐

如何更新文本字段的基础上的选定下拉菜单?

你能go 掉Flutter 小部件测试中的样板吗?

在Flutter 中更改扩展瓷砖的高度

当 Dart SDK 版本范围不匹配时,为什么依赖解析器不会抛出错误?

Firestore 不会取代 map

尽管我的 url 链接正确,但 ArgumentError(无效参数:URI 文件中未指定主机:///)错误

Flutter - Stripe:类型List 不是类型Map 的子类型? method_channel_stripe.dart 中的错误:263

Flutter:如何设置 PersistentFooterButtons 背景?

没有为类型 'Widget' 定义运算符 '[]' .try 定义运算符[]

在 Flutter 中更改喜欢按钮的 colored颜色

减少 Flutter 中 API 的连接等待时间

如何为文本主题设置多种 colored颜色 ?

如何根据应用程序主题(深色和浅色)更改谷歌 map 的主题?

Show Snackbar above to showModalBottomSheet Flutter

Pub get 尚未运行

如何在 Flutter 中将 ScaffoldMessenger 中的 Snackbar 显示为 Widget?

避免长单词中断

Flutter 中父容器顶部的 Gridview 间距额外区域

Flutter Web App 未启动:脚本的 MIME 类型不受支持

解密 Modulr 安全令牌