首页 > 解决方案 > 检查文本小部件是否具有样式

问题描述

我正在尝试向 a 添加默认样式Text Widget,但我需要能够覆盖它。

这就是我现在正在尝试的。

var newTitle = title;
    if (title is Text) {
      Text titleText = title as Text;
      newTitle = Text(titleText.data, style: TextStyle == null ? TextStyle() : TextStyle(fontWeight: FontWeight.bold));
    }

所以我想检查它是否有样式,如果没有添加默认样式,否则使用覆盖

标签: flutterdart

解决方案


Flutter 通过提供一个DefaultTextStyle小部件来提供一种简单的方法来执行此操作,该小部件可用于为子树指定默认的文本样式。如果子Text小部件已经定义了样式,则将使用特定的 Text 样式。

DefaultTextStyle(
  child: title,
  style: TextStyle(fontWeight: FontWeight.bold),
),

推荐阅读