Flutter:RichText 不适用于主题

标签 flutter richtext

我正在尝试以不同颜色显示一些文本。我了解了 RichText 小部件并按如下方式使用它;

Future<List<TextSpan>> listOfEventsAtDay({String day, String monthNum}) async {
  final result = await DatabaseHelper.instance
      .queryForEventsAtDay(mnth: monthNum, dy: day);
  List<TextSpan> textSpans = [];
  int count = result.length;
  for (int i = 0; i < count; i++) {
    final String string = "-${result[i]['year']}: ${result[i]['title']}\n";
    textSpans.add(TextSpan(
        text: string,
        ));
  }

  return textSpans;
}

稍后调用;

ListTile( title: RichText(text: TextSpan(children: snapshot.data),

我现在不想要任何复杂的样式。在深色模式下,文本应为白色,在浅色模式下,文本应为黑色。就这样。但问题是,文字总是白色的。为什么它不随亮度设置调整?有什么办法可以做到这一点?请帮助我...

最佳答案

经过一些学习,我可以回答我的问题。

Future<List<TextSpan>> listOfEventsAtDay({String day, String monthNum, BuildContext context}) async {
  final result = await DatabaseHelper.instance
      .queryForEventsAtDay(mnth: monthNum, dy: day);
  List<TextSpan> textSpans = [];
  int count = result.length;
  for (int i = 0; i < count; i++) {
    final String string = "-${result[i]['year']}: ${result[i]['title']}\n";
    textSpans.add(TextSpan(
        text: string,
        style: DefaultTextStyle.of(context).style,
        ));
  }

这修复了它。

关于Flutter:RichText 不适用于主题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63868013/

相关文章:

ios - 以编程方式更改 flutter i18n 应用程序的语言在 iOS 中不起作用

javascript - 如何在 Quill JS 中添加图像?

javascript - jQuery - 获取包含 HTML 标签的文本区域的值

javascript - 使用 DocumentFragment 和 innerHTML 通过富文本注释存储 XSS 预防

memory-leaks - Flutter:Cloud_Firestore 给出错误 "FlutterView.send called on a detached view, channel=plugins.flutter.io/cloud_firestore"

带有 NumberFormat 的 Flutter TextFormField 显示值

flutter - 无法使用android studio创建flutter项目

vba - 寻找一个可以从 VBA 中使用的简单的富文本编辑器

html - 使用 HTML 特殊字符(例如标签)的替代品将 QString 转换为文本

flutter - Flutter:用于循环和LayoutBuilder