Flutter TextStyle超级方便的统一管理器

TextStyle 管理器

场景

我们在项目中经常使用Text这个Widget 那么设置他的TextStyle 相对代码比较多,相同的属性,我们很多地方要用到,那么就用到了很多重复的代码。

常见写法

写法1

直接在代码里写TextStyle

			Text(
                "Scaffold",
                style: new TextStyle(color: Color(0xFF333333), fontSize: 14.0),
              ),
好处

缺点

不灵活,不方便统一修改,代码重复

写法2

将TextStyle 抽出放在外面 用值简写
在这里插入图片描述

var blackTextStyle =
      new TextStyle(color: const Color(0xFF333333), fontSize: 15.0);
使用
 Text("Scaffold",style: blackTextStyle,),
好处

可以文件中全局使用和控件,跨文件就不行

缺点

总的来说还是不灵活,代码繁杂

写法3

TextStyleUtils 模式 单独新建一个文件存放TextStyle
使用时导包,传入对应值,通过switch return

在这里插入图片描述

使用
new Text(
                "照片显示",
                style: getTextStyle("f2f228"),
              )
好处

有统一管理的方式,方便修改和新增

缺点

不灵活,需要String去匹配,用起来麻烦

最终方案

你没有见过的全新版本,灵感来自于Icons.icon
我们在使用icon的时候,是可以直接在icons. 有提示的 这样非常的方便。
那么他是怎么实现的呢,大家可以看看源码,我这里简单的讲一下,他将需要的widget变成的不可变静态的。

使用 和icons 一样
在这里插入图片描述

是不是一样的非常方便

我们看这个TextStyleMs
在这里插入图片描述

好处

有统一管理的方式,方便修改和新增,非常方便的使用,和icons一样

缺点

暂无

github地址TextStyle 管理器

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章