Flutter 处理主题 Theme 的一些建议

2022-11-07  本文已影响0人  独立开发者猫哥

Flutter 处理主题 Theme 的一些建议

原文 https://medium.com/@ahmed.salamay/what-to-consider-when-dealing-with-flutter-theme-ced376524a15

前言

主题通过指定一套颜色和文本样式的系统,帮助应用程序获得结构化设计和统一性。主题使您能够快速实现 UI,而不必强调次要细节,比如为每个 widget 指定确切的颜色。

正文

为什么选择 Theme 主题 ?

色彩处理

Flutter 主题数据具有一定的 gaps 和 flows ,例如,并非所有的组件都应用于主题数据对象中的配色方案

看看这个例子,只定义了橙色的唯一主色值

那么我该如何克服这个问题呢?

所有这些问题都会按照这个 https://github.com/flutter/flutter/issues/91772 得到解决 但在此之前,我建议您使用 FlexColorScheme 包。

https://docs.flexcolorscheme.com/

FlexColorScheme 不仅解决了这些问题,而且还有更多的特性:

https://docs.flexcolorscheme.com/

文本主题

使用文本主题是很困难的,并且不建议你更改 ThemeData 对象中的 TextTheme,因为你会意外地更改一些你不知道的东西,例如日期选择器,除非你确切地知道这些更改将如何影响你的应用程序。

问题是 flutter 没有记录哪个文本样式应用于哪个组件,所以你必须自己去发现它

另外,您必须知道不能在调用 TextTheme() 构造函数时混合使用 20182021 术语。

2018 年的术语是标题 1,标题 2,标题 3,标题 4,标题 5,标题 6,字幕 1,字幕 2,body Text1,body Text2,标题,按钮,概述

2021 年的术语是 display Large,displayMedium,displaySmall,headline Large,headline Medium,headline Small,titleLarge,titleMedium,title Small,body Large,body Small,label Large,label Medium,label Small,

如果您选择更改文本主题数据样式,下面是一些将受到影响的组件

建议

我发现 gkinnerTeam 处理风格的方式是最好的例子之一,特别是在 flutter-Wonder-app 中处理的方式

https://github.com/gskinnerTeam

https://github.com/gskinnerTeam/flutter-wonderous-app

Https://github.com/gskinnerteam/flutter-wonderous-app/blob/master/lib/styles/styles.dart

参考文献

结束语

如果本文对你有帮助,请转发让更多的朋友阅读。

也许这个操作只要你 3 秒钟,对我来说是一个激励,感谢。

祝你有一个美好的一天~


© 猫哥

本文由mdnice多平台发布

上一篇下一篇

猜你喜欢

热点阅读