Flutter: 将文本着色为当前主题的辅助颜色的最佳方法?

创建于 2016-05-11  ·  3评论  ·  资料来源: flutter/flutter

材料设计有一个辅助文本颜色的概念:https: //www.google.com/design/spec/style/color.html#color -text-background-colors

我可以使用非常冗长的语句访问这种颜色: Theme.of(context).textTheme.caption.color 。 我不想要来自标题或显示 [1-4] 的任何额外样式(重量、字体大小)。 直接使用Colors.black54并不理想,因为它不适应主题变化。 是否有一种不那么冗长的方式来获取当前主题的辅助文本颜色? 目前我做了一个包级功能,但感觉应该有更好的方法:

Color secondary(BuildContext context) =>
  Theme.of(context).textTheme.caption.color;

这让我可以说

new TextStyle(color: secondary(context))

代替

new TextStyle(color: Theme.of(context).textTheme.caption.color)
api docs material design framework

最有用的评论

@Hixie听起来ThemeData应该有一个字段。

所有3条评论

@Hixie听起来ThemeData应该有一个字段。

同意。

次要颜色是强调色。 ThemeData 上有一个用于强调颜色的字段; 我们应该从 TextStyle 文档或类似的文档中指出它。

此页面是否有帮助?
0 / 5 - 0 等级