dev_prokit 之快速设置文本样式

往期优选推荐

1. Fam 最简单的 Flutter 项目 Assets 管理脚本服务

推荐指数: ⭐️⭐️⭐️⭐️⭐️

》fam 和 flutter_gen 相比优点《

  1. fam 不需要在项目的 pubspec.yaml 文件的 dev_dependencies 引入任何东西;而 flutter_gen 需要引入 flutter_gen_runner

  2. fam 在导入资源后只需要执行 fam run 即可;而 flutter_gen 需要执行 dart run build_runner build 。需要注意的是 dart run build_runner build 是很多代码自动生成的运行指令(多语言、json解析、rividerpod...等)。所以一旦执行就需要很长时间才能完成,而 fam 拥有独立的体系,便捷快速!

  3. fam 的资源管理类在项目中使用简短;而 flutter_gen 需要使用.语法一直到资源文件,然后再通过 .path 获取资源路径,这很麻烦!

  4. fam 拥有独立的系统体系; flutter_gen 和多语言的使用有一定的冲突。

2. dev_prokit 全部功能目录

推荐指数: ⭐️⭐️⭐️⭐️⭐️

该篇文章包含了 dev_prokit 所有功能介绍和示例的目录。此文章能够让开发者快速的了解 dev_prokit 都提供了那些功能,以及能更快速的找到自己需要的功能介绍和应用。

本期功能介绍

一、起因

在Flutter项目开发的广阔天地里,Text组件的使用可谓是无处不在,其出现频率之高几乎贯穿整个应用的每个角落。这些Text元素依据设计视图展现着千姿百态的面貌,而开发者则需要依据设计图精心调配不同的TextStyle,以赋予它们独特的风貌。

想象一下,若每个Text都需要我们手动书写形如TextStyle(xx, xx...)的冗长代码,那无疑会给开发者带来巨大的负担,同时也会导致代码量激增,显得杂乱无章。幸运的是,有了dev_prokit 这一得力助手,一切变得如此轻松与简洁。

二、功能介绍

dev_prokit 提供了下面对 TextStyle 处理的方法:

final TextStyle tStyle = TextStyle(height: 1, fontFamily: 'Rcod')

方法名 功能 用法
fInherit 文本样式是否继承父 Widget 的样式 tStyle.fInherit(true)
fColor 设置文本颜色, 还可以设置透明度和不透明度 sStyle.fColor(Colors.red)
bgColor 设置文本背景颜色, 还可以设置透明度和不透明度 sStyle.bgColor(Colors.red)
fSize 设置文本字体大小 sStyle.fSize(20)
thin、extraLight、light、normal、regular、plain、medium、semiBold、bold、extraBold、black 设置文本字重 sStyle.bold
fStyle 设置文本字体样式 sStyle.fStyle(FontStyle.italic)
lSpacing 设置文本字符之间的间距 sStyle.lSpacing(2)
wSpacing 设置文本字体之间的间距 sStyle.wSpacing(2)
tbl 设置文本字体的基线 sStyle.tbl(TextBaseline.ideographic)
tld 设置文本之间的对齐方式 sStyle.tld(TextLeadingDistribution.proportional)
oFlow 设置文本溢出处理方式 sStyle.oFlow(TextOverflow.ellipsis)
fHeight 设置文本高度 sStyle.fHeight(1)
fFamily 设置文本字体名字 sStyle.fFamily('仿宋')
familyFallback 设置文本字体名字失败时,回调使用字体 sStyle.familyFallback(['小宋'、'篆体'])

... 等等。还有很多未介绍的功能方法,请自行查看文档便可即知。

三、小试牛刀

下面我们将使用 dev_prokit 提供的方法中常用的的方法进行测试:

  • 示例代码

    dart 复制代码
    const TextStyle tStyle = TextStyle(fontFamily: 'Rc', height: 1);
    return Scaffold(
      appBar: AppBar(
        title: Text(
          '文本样式',
          style: tStyle.bold,
        ),
      ),
      body: Column(
        children: [
          Text(
            '设置字重',
            style: tStyle.medium,
          ),
          Text(
            '设置大小',
            style: tStyle.fSize(20),
          ),
          Text(
            '设置文本颜色',
            style: tStyle.fColor(Colors.red),
          ),
          SizedBox(
            width: 60,
            child: Text(
              '设置溢出格式',
              style: tStyle.oFlow(TextOverflow.ellipsis),
            ),
          ),
          Text(
            '设置文字字母间距',
            style: tStyle.lSpacing(5),
          ),
          Text(
            '设置文字字体间距ab like',
            style: tStyle.wSpacing(50),
          )
        ],
      ).insetsAll(20),
    );
  • 效果展示

四、鼓励与支持

这便是 dev_prokit 提供的方法之一。以编写代码较少、功能完善、代码运行强壮、支持面广等形式来开发 dev_prokit 包。 如果你有 Idea 或者 Opinion ,那请你点击此处 》》Idea & Opinion《《 把它留下吧!如果你在使用该功能后感觉还可以,它能够给你的项目开发带来便捷,那请你为之点个⭐️ dev_prokit ⭐️ 吧!分享给更多需要它的开发者。

相关推荐
似霰29 分钟前
安卓智能指针sp、wp、RefBase浅析
android·c++·binder
大风起兮云飞扬丶29 分钟前
Android——网络请求
android
干一行,爱一行32 分钟前
android camera data -> surface 显示
android
断墨先生1 小时前
uniapp—android原生插件开发(3Android真机调试)
android·uni-app
无极程序员2 小时前
PHP常量
android·ide·android studio
萌面小侠Plus3 小时前
Android笔记(三十三):封装设备性能级别判断工具——低端机还是高端机
android·性能优化·kotlin·工具类·低端机
慢慢成长的码农3 小时前
Android Profiler 内存分析
android
大风起兮云飞扬丶3 小时前
Android——多线程、线程通信、handler机制
android
君蓦4 小时前
Flutter 本地存储与数据库的使用和优化
flutter