Flutter中TextSpan Widget的样式属性
Style Property of TextSpan Widget in Flutter
我正在开发一条显示有关我的 flutter 应用程序信息的路线。我使用 RichText 和 TextSpan 小部件来显示指向我的电子邮件和 github 存储库的内联超链接。这不仅可以轻松地为链接添加下划线,还可以轻松定义 TapGestureRecognizer 行为。在测试时我发现为了让这个文本始终出现(无论是 DarkTheme 还是 LightTheme)我需要指示小部件获取上下文主题,如下所示:
TextSpan(
text: "\n You may also view this project's source code at ",
style: Theme.of(context).textTheme.bodyText1,
),
但是现在我将一个方法传递给样式 属性,我怎样才能指定我希望文本也带有下划线?在我的风格 属性 阅读之前:
style: TextStyle(
decoration: TextDecoration.underline,
),
我怎样才能做到这两点?
使用copyWith
:
final existingStyle = Theme.of(context).textTheme.bodyText1;
TextSpan(
text: "Your text...",
style: existingStyle?.copyWith(
decoration: TextDecoration.underline,
),
)
我正在开发一条显示有关我的 flutter 应用程序信息的路线。我使用 RichText 和 TextSpan 小部件来显示指向我的电子邮件和 github 存储库的内联超链接。这不仅可以轻松地为链接添加下划线,还可以轻松定义 TapGestureRecognizer 行为。在测试时我发现为了让这个文本始终出现(无论是 DarkTheme 还是 LightTheme)我需要指示小部件获取上下文主题,如下所示:
TextSpan(
text: "\n You may also view this project's source code at ",
style: Theme.of(context).textTheme.bodyText1,
),
但是现在我将一个方法传递给样式 属性,我怎样才能指定我希望文本也带有下划线?在我的风格 属性 阅读之前:
style: TextStyle(
decoration: TextDecoration.underline,
),
我怎样才能做到这两点?
使用copyWith
:
final existingStyle = Theme.of(context).textTheme.bodyText1;
TextSpan(
text: "Your text...",
style: existingStyle?.copyWith(
decoration: TextDecoration.underline,
),
)