共计 12192 个字符,预计需要花费 31 分钟才能阅读完成。
FlutterUtils
目录介绍
- 01. 事件告诉 bus 工具类
- 02. 色彩 Color 工具类
- 03. 日期转化工具类
- 04.File 文件工具类
- 05.Sql 数据库工具类
- 06.Json 转化工具类
- 07.Log 日志打印工具类
- 08. 屏幕参数工具类
- 09.Sp 轻量存储工具类
- 10. 辅助计算工具类
- 11. 加密和解密工具类
- 12.Num 格局解决工具类
- 13. 设施参数获取工具类
- 14. 图片解决工具类
- 15. 网络解决工具类
- 16. 罕用正则工具类
- 17.Object 常用工具类
- 18. 验证相干工具类
- 19. 路由管理工具类
- 20.Bus 事件工具类
- 21.Text 文本工具类
- 22.i18 拓展工具类
- 23.Time 工夫工具类
- 24.SPI 帮忙工具类
- 25. 计时器辅助工具类
- 26. 常见拓展工具类
- 27. 内存缓存工具类
- 28. 革除操作工具类
- 29. 编解码相干工具类
- 30. 反射相干工具类
- 31. 资源相干工具类
- 32.Snackbar 工具类
- 33. 转化相干工具类
- 34. 全局异样捕捉工具
- 35. 解析数据工具类
- 36. 字节转化工具类
- 40. 其余相干工具类
00. 该库阐明
00.1 该库工具类汇总
工具类 | 性能阐明 |
---|---|
EventBusService | bus 事件告诉工具类,实现了订阅者模式。用于组件之间通信 |
CalculateUtils | 计算文本的宽,高 |
ColorUtils | 次要是将 RGB/ARGB 转化为 16 进制字符串色彩或者 Color |
DateFormats | 常见中文,英文的日期工夫转化的格局。蕴含绝大多数的日期格局 |
DateUtils | 日期工具类,获取日期工夫,各种工夫之间的转换操作 |
EncryptUtils | 加解密工具类,次要是 md5 加密,base64 加密和解密,异或加解密等 |
ExtensionXxx | 拓展类,蕴含 int,list,map,set,num,string 等拓展类,有大多数常见操作方法 |
TransformUtils | 转化工具类,蕴含 int,string 转化二进制,字母大小写转化等等 |
ValidatorUtils | 校验工具类,蕴含常见类型,图片,url,邮箱,电话,资源文件,驼峰命名等校验 |
ExtensionXxx | 拓展类,蕴含 int,list,map,set,num,string 等拓展类,有大多数常见操作方法 |
TransformUtils | 转化工具类,蕴含 int,string 转化二进制,字母大小写转化等等 |
FileUtils | 文件缓存类,次要是存储和获取字符串,Map,Json 等数据,写到本地 file 文件 |
TransformUtils | 转化工具类,蕴含 int,string 转化二进制,字母大小写转化等等 |
AppLocalizations | i18 相干,能够设置 locale,获取语言中字符串 |
ImageUtils | 图片工具类,次要是负责图片和 base64 转化,加载网络图片,切换圆角,圆形等 |
JsonUtils | json 转化工具类,次要是负责 list,map,对象和 json 之间转化等 |
get_it | spi 接口实现,将接口(形象基类)与具体实现拆散和解耦合 |
LogUtils | 日志工具类,设置日志开关,长度,以及能够过滤标签,打印 5 种类型日志 |
NumUtils | Num 格局工具类,次要是负责 num 相干解决和转化操作 |
ObjectUtils | Object 超类工具类,负责各种对象判断,获取长度等操作 |
RegexConstants | 常见正则表达式的规定常量,这部分次要参考 AndroidUtils |
RegexUtils | 正则表达式工具类,次要是电话,身份证,邮箱,ip,网络等校验 |
ScreenUtils | 屏幕工具类,获取屏幕的宽高,以及像素密度比等 |
SpUtils | sp 存储工具类,适宜存储轻量级数据,不倡议存储 json 长字符串 |
TextUtils | 文本工具类,次要解决字符串缩略,*,比拟,移除等操作 |
TimerUtils | 倒计时器工具类,设置倒计时总工夫,间隔时间,开始暂停等 |
UrlUtils | url 工具类,获取 url 的 host,参数,校验等操作 |
SystemUtils | 零碎工具类,复制内容到剪切板,弹出和敞开软键盘,革除数据等 |
OtherUtils | RandomUtils 随机工具类,SnackUtils,PlatformUtils 平台工具类 |
MVP | Flutter 版本的 MVP 架构模版,待欠缺中…… |
00.2 如何应用该库
- 具体文档能够 demo
01. 事件告诉 bus 工具类
-
事件总线
- 通常实现了订阅者模式,订阅者模式蕴含发布者和订阅者两种角色。
-
第一种形式:应用 map 汇合存储 key 为事件 eventName,value 为 EventCallback 实现 bus
// 注册监听 bus _subscription = EventBusService.instance.eventBus.on<EventMessage>().listen((event) { String name = event.eventName; // 前后台切换产生了变动 if (name == "eventBus1") {var busMessage = event.arguments["busMessage"]; setState(() {message1 = busMessage;}); } }); // 发送音讯 EventBusService.instance.eventBus.fire(EventMessage( "eventBus1", arguments: {"busMessage": "发送 bus 音讯 1"}, )); // 页面销毁革除 bus if (_subscription != null) {_subscription.cancel(); _subscription = null; }
-
第二种形式:应用 StreamController 实现 bus 事件告诉
// 注册监听音讯 bus.on("eventBus2", (arg) { var busMessage = arg; setState(() {message2 = "接管音讯:" + busMessage;}); }); // 发送音讯 var arg = "发送 bus 音讯 1"; bus.emit("eventBus2", arg); // 移除音讯 bus.off("eventBus2", (arg) {});
02. 色彩 Color 工具类
-
色彩 Color 工具类。次要是将 RGB 或者 ARGB 色彩转化为 Color 对象,16 进制色彩字符串等等。
hexToColor : 将 #A357D6 色彩转化为 16 进制的 Color toColor : 将 #FF6325 色彩或者#50A357D6 转化为 16 进制的 Color colorString : 将 color 色彩转变为字符串 colorString : 查看字符串是否为十六进制
03. 日期转化工具类
-
日期转化工具类。次要是获取以后日期,按指定格局格式化工夫,以及多种格式化日期工具办法
getNowDateTime : 获取以后日期返回 DateTime getYesterday : 获取昨天日期返回 DateTime getNowUtcDateTime : 获取以后日期返回 DateTime(utc) getNowDateTimeFormat : 获取以后日期,返回指定格局 getUtcDateTimeFormat : 获取以后日期,返回指定格局 isYesterday : 依据工夫判断是否是昨天 getNowDateMs : 将 #获取以后毫秒值,返回 int getNowDateString : 获取当初日期字符串,默认是:yyyy-MM-dd HH:mm:ss,返回字符串 formatDate : 格式化工夫,第一个字段是 dateTime,第二个可选项示意格局 formatDateString : 格式化日期字符串,第一个字段例如:'2021-07-18 16:03:10',第二个字段例如:"yyyy/M/d HH:mm:ss" formatDateMilliseconds : 格式化日期毫秒工夫,第一个字段例如:1213423143312,第二个字段例如:"yyyy/M/d HH:mm:ss" getWeekday : 获取 dateTime 是星期几 getWeekdayByMilliseconds : 获取毫秒值对应是星期几 isToday : 依据工夫戳判断是否是明天 isYesterday : 依据工夫判断是否是昨天
04.File 文件工具类
4.1 文件存储工具类
-
文件存储工具类。次要是存储和获取 String,Json 等文件,这个是存储到 file 本地文件
getTempDir : 获取一个长期目录(缓存),零碎能够随时革除 getAppDocDir : 获取应用程序的目录,用于存储只有它能够拜访的文件。只有当应用程序被删除时,零碎才会革除目录。getAppFile : 初始化文件门路,默认选中应用程序的目录 readStringDir : 获取存在文件中的数据,默认读到应用程序的目录 writeJsonFileDir : 写入 json 文件,默认写到应用程序的目录 writeStringDir : 利用文件存储字符串,默认写到应用程序的目录 clearFileDataDir : 革除缓存数据 deleteFileDataDir : 删除缓存文件 writeJsonCustomFile : 写入 json 文件,自定义门路 writeStringFile : 利用文件存储字符串,自定义门路 readStringCustomFile : 获取自定义门路文件存中的数据
4.2 文件管理工具类
-
文件管理工具类。次要是创立不同的目录门路,创立文件,或者目录门路等操作。
getTempPath : 获取设施上长期目录的门路,该目录没有备份,适宜存储下载文件的缓存。getAppDocPath : 获取应用程序的目录,用于存储只有它能够拜访的文件。只有当应用程序被删除时,零碎才会革除目录。getStoragePath : 应用程序能够拜访顶层存储的目录的门路 createDirSync : 异步创立文件 createDir : 同步创立文件 createTempDir : 创立长期目录 createAppDocDir : 创立获取应用程序的目录
05.Sql 数据库工具类
- 待欠缺
06.Json 转化工具类
-
Json 转化工具类。json 转化常见的操作,逐步完善 list,map 和 json 字符串互转等。
printJson : 单纯的 Json 格局输入打印 printJsonEncode : 单纯的 Json 格局输入打印 encodeObj : 将对象 [值] 转换为 JSON 字符串 getObj : 转换 JSON 字符串到对象 getObject : 转换 JSON 字符串或 JSON 映射 [源] 到对象 getObjList : 转换 JSON 字符串列表 [源] 到对象列表 getObjectList : 转换 JSON 字符串或 JSON 映射列表 [源] 到对象列表
07.Log 日志打印工具类
-
Log 日志打印工具类。五种不同类型日志,还能够增加 tag 标签过滤。
init : 初始化日志,自定义 tag,是否是 debug 环境,日志最大长度,这几个字段都是非必选 d : 打印 debug 日志 e : 打印 error 日志 v : 打印 v 日志 i : 打印 info 日志 w : 打印 ware 正告日志
08. 屏幕参数工具类
-
屏幕参数工具类。获取屏幕的宽,高,像素密度,状态栏等属性。前期欠缺适配工作……
screenWidthDp : 以后设施宽度 dp screenHeightDp : 以后设施高度 dp pixelRatio : 设施的像素密度 screenWidth : 以后设施宽度 px = dp * 密度 screenHeight : 以后设施高度 px = dp * 密度 statusBarHeight : 状态栏高度 dp 刘海屏会更高 bottomBarHeight : 底部安全区间隔 dp textScaleFactory : 像素的字体像素数,字体的缩放比例
09.Sp 轻量存储工具类
-
sp 轻量级存储工具。次要是 sp 存储和获取 int,String,list,map 等数据操作。
init : 初始化,必须要初始化 hasKey : 判断是否存在 key 的数据 putObject : 存储 object 类型数据 getObject : 获取 sp 中 key 的 map 数据 putObjectList : 存储 sp 中 key 的 list 汇合 getObjectList : 获取 sp 中 key 的 list 汇合 getString : 获取 sp 中 key 的字符串 putString : 存储 sp 中 key 的字符串 getBool : 获取 sp 中 key 的布尔值 putBool : 存储 sp 中 key 的布尔值 getInt : 获取 sp 中 key 的 int 值 putInt : 存储 sp 中 key 的 int 值 getDouble : 获取 sp 中 key 的 double 值 putDouble : 存储 sp 中 key 的 double 值 getStringList : 获取 sp 中 key 的 list<String> 值 putStringList : 存储 sp 中 key 的 list<String> 值 getStringMap : 获取 sp 中 key 的 map 值 putStringMap : 存储 sp 中 key 的 map 值 getDynamic : 获取 sp 中 key 的 dynamic 值 getKeys : 获取 sp 中所有的 key remove : 移除 sp 中 key 的值 clear : 革除 sp isInitialized : 查看初始化 forEach : 遍历打印 sp 的 key 和 value
11. 加密和解密工具类
-
加密和解密工具类。目前反对 base64 加解密,md5 加密。前期逐步完善更多加密办法……
encodeMd5 : md5 加密字符串,这种是不可逆的 encodeBase64 : Base64 加密字符串 decodeBase64 : Base64 解密字符串 xorBase64Encode : 异或对称 Base64 加密 xorBase64Decode : 异或对称 Base64 解密
12.Num 格局解决工具类
-
格局解决工具类。次要是解决 num 格局转化相干操作。
isNum : 查看字符串是 int 还是 double getIntByValueString : 将数字字符串转 int。如果字符串不是数字,则转化为 0 getDoubleByValueString : 数字字符串转 double。如果字符串不是数字,则转化为 0 getNumByValueString : 将数字字符串转 num,数字保留 x 位小数 getNumByValueDouble : 浮点数字保留 x 位小数 addNum : 两个数相加(避免精度失落)subtractNum : 两个数相减(避免精度失落)multiplyNum : 两个数相乘(避免精度失落)divideNum : 两个数相除(避免精度失落)addDecString : 两个数相加(避免精度失落)subtractDecString : 两个数相减(避免精度失落)multiplyDecString : 两个数相乘(避免精度失落)divideDecString : 两个数相除(避免精度失落)
14. 图片解决工具类
-
其余待欠缺,补充圆角,圆形切割图片,以及解决本地等图片的办法。前期欠缺获取图片属性,图片压缩,各种切圆角办法。
base64ToImage : 将 base64 流转化为图片 fileToBase64 : 将图片 file 转化为 base64 networkImageToBase64 : 将网络链接图片转化为 base64 assetImageToBase64 : 将 asset 图片转化为 base64 showNetImageWh : 加载网络图片,并且指定宽高大小。应用默认预加载 loading 和谬误视图 showNetImageWhError : 加载网络图片,并且指定宽高大小。传入谬误视图 showNetImageWhPlaceError : 加载网络图片,并且指定宽高大小。传入预加载,谬误视图 showNetImageWhClip : 加载网络图片,并且指定宽高大小,切割圆角 showNetImageCircle : 加载网络图片,切割圆形图片
15. 网络解决工具类
15.1 网络申请工具类
15.2 Url 解析工具类
-
解决 url 解析相干工具类
containsTarget : 判断 url 链接是否蕴含参数 getFirstPath : 获取 url 中第一个参数 getUrlHost : 获取 url 链接中 host getUrlScheme : 获取 url 链接中 scheme getFirstPath : 获取 url 中第一个参数 isURL : 返回输出是否匹配 url 的正则表达式
16. 罕用正则工具类
-
罕用正则表达式,借鉴 AndroidUtils 工具类,将 java 转为 dart
isMobileSimple : 简略验证手机号 isMobileExact : 准确验证手机号 isTel : 验证电话号码 isIDCard15 : 验证身份证号码 15 位 isIDCard18 : 简略验证身份证号码 18 位 isIDCard18Exact : 准确验证身份证号码 18 位 isEmail : 验证邮箱 isURL : 验证 URL isZh : 验证汉字 isUsername : 验证用户名 isDate : 验证 yyyy-MM-dd 格局的日期校验,已思考平平年 isIP : 验证 IP 地址 match : 判断是否匹配正则 RegexConstants.REGEX_DOUBLE_BYTE_CHAR : 双字节 RegexConstants.REGEX_BLANK_LINE : 空行 RegexConstants.REGEX_QQ_NUM : QQ 号 RegexConstants.REGEX_CHINA_POSTAL_CODE : 邮编 RegexConstants.REGEX_INTEGER : 整数 RegexConstants.REGEX_POSITIVE_INTEGER : 正整数 RegexConstants.REGEX_NEGATIVE_INTEGER : 负整数 RegexConstants.REGEX_NOT_NEGATIVE_INTEGER: 非负整数 RegexConstants.REGEX_NOT_POSITIVE_INTEGER: 非正整数 RegexConstants.REGEX_FLOAT : 浮点数 RegexConstants.REGEX_POSITIVE_FLOAT : 正浮点数 RegexConstants.REGEX_NEGATIVE_FLOAT : 负浮点数 RegexConstants.REGEX_NOT_NEGATIVE_FLOAT : 非负浮点数 RegexConstants.REGEX_NOT_POSITIVE_FLOAT : 非正浮点数
17.Object 常用工具类
-
Object 相干工具类如下:
isNull : 判断对象是否为 null isNullOrBlank : 检查数据是否为空或空(空或只蕴含空格) isEmptyString : 判断字符串是否为空 isEmptyList : 判断汇合是否为空 isEmptyMap : 判断字典是否为空 isEmpty : 判断 object 对象是否为空 isNotEmpty : 判断 object 是否不为空 compareListIsEqual : 比拟两个汇合是否雷同 getLength : 获取 object 的长度
18. 验证相干工具类
-
验证相干工具类
isNumericOnly : 查看字符串是否只蕴含数字 isAlphabetOnly : 查看字符串是否只蕴含字母。(没有空格) isBool : 查看字符串是否为布尔值 isVector : 查看 string 是否为 vector 文件 isImage : 查看字符串是否为图像文件 isAudio : 查看字符串是否为音频文件 isVideo : 查看字符串是否为视频文件 isTxt : 查看字符串是否为 txt 文本文件 isDocument : 查看字符串是否为 doc 文件 isExcel : 查看字符串是否为 excel 文件 isPPT : 查看字符串是否为 ppt 文件 isAPK : 查看字符串是否为 apk 文件 isPDF : 查看字符串是否为 pdf 文件 isHTML : 查看字符串是否为 html 文件 isURL : 查看字符串是否为 url 文件 isEmail : 查看字符串是否为 email 文件 isDateTime : 查看字符串是否为工夫 isMD5 : 查看字符串是否为 md5 isSHA1 : 查看字符串是否为 sha1 isSHA256 : 查看字符串是否为 sha256 isIPv4 : 查看字符串是否为 ipv4 isIPv6 : 查看字符串是否为 ipv6 isPalindrome : 查看字符串是否为回文 isCaseInsensitiveContains : 查看 a 是否蕴含 b(将大小写字母视为雷同或解释)。isCaseInsensitiveContainsAny : 查看 a 中是否蕴含 b 或 b 中是否蕴含 a(将大小写字母视为雷同)。isCamelCase : 查看字符串值是否驼峰大小写 isCapitalize : 查看字符串值是否大写
19. 路由管理工具类
21.Text 文本工具类
-
文本相干工具类如下:
isEmpty : 判断文本内容是否为空 isNotEmpty : 判断文本内容是否不为空 startsWith : 判断字符串是以 xx 结尾 contains : 判断字符串中是否蕴含 xx abbreviate : 应用点缩写字符串 compare : 比拟两个字符串是否雷同 hammingDistance : 比拟两个长度一样的字符串有几个字符不同 formatDigitPattern : 每隔 x 位 加 pattern。比方用来格式化银行卡 formatSpace4 : 每隔 4 位加空格 hideNumber : 暗藏手机号两头 n 位,比方暗藏手机号 13667225184 为 136****5184 replace : 替换字符串中的数据 split : 依照规定切割字符串,返回数组 reverse : 反转字符串
22.i18 拓展工具类
-
LocatizationExtensionState 类中:String getString(String id)
- 获取不同 Locales 渠道语言内容。举例:应用:var name = context.getString(“name”);
-
LocatizationExtensionContext 类中:String getString(String id)
- 获取不同 Locales 渠道语言内容
-
如何增加不同渠道语言内容。写在 main 函数中 runApp 之前
AppLocalizations.supportedLocales = [const Locale('en', 'US'), const Locale('pt', 'BR'), const Locale('ja', 'JP'), const Locale('zh', 'CN'), ];
23.Time 工夫工具类
24.SPI 帮忙工具类
-
spi 简略介绍
-
Service Locator 能够将接口(形象基类)与具体实现拆散和解耦合,同时容许通过接口从 App 中的任何地位拜访具体实现。
// 第一步注册 GetIt serviceLocator = GetIt.instance; getIt.registerSingleton<BusinessService>(new BusinessServiceImpl()); // 第二步应用 BusinessService businessService = serviceLocator<BusinessService>(); businessService.noneBusinessPattern(); // 第三步解绑 serviceLocator.resetLazySingleton<BusinessService>();
-
25. 计时器辅助工具类
-
计时器辅助工具类
TimerUtils : 创立倒计时器 setTotalTime : 设置倒计时总工夫 setInterval : 设置 Timer 距离 startTimer : 启动定时 Timer updateTotalTime : 重设倒计时总工夫 isActive : 判断 Timer 是否启动 pauseTimer : 暂停倒计时器 cancel : 勾销计时器 setOnTimerTickCallback : 设置倒计时器的监听
26. 常见拓展工具类
26.1 int 拓展类:ExtensionInt
-
ExtensionInt 拓展类
isPalindrome : 查看 int 是否为回文 isOneAKind : 查看所有数据是否具备雷同的值 toBinary : 转换 int 值为二进制 toBinaryInt : 转换 int 值为二进制 int fromBinary : 转换 int 值为二进制字符串
26.2 List 拓展类:ExtensionList
-
ExtensionList 拓展类
toJsonString : 将 list 转化为 json 字符串 getJsonPretty : 将 list 转化为 json 字符串,换行 valueTotal : 获取 num 列表的总值(int/double) isNull : 判断对象是否为 null isNullOrBlank : 检查数据是否为空或空(空或只蕴含空格)
26.3 Map 拓展类:ExtensionMap
-
ExtensionMap 拓展类【set 拓展类同理】
toJsonString : 将 map 转化为 json 字符串 getJsonPretty : 将 map 转化为 json 字符串换行 isNull : 判断对象是否为 null isNullOrBlank : 检查数据是否为空或空(空或只蕴含空格)
26.4 String 拓展类:ExtensionString
-
ExtensionString 拓展类
isNull : 判断对象是否为 null isNullOrBlank : 检查数据是否为空或空(空或只蕴含空格) isNumericOnly : 查看字符串是否只蕴含数字 isAlphabetOnly : 查看字符串是否只蕴含字母。(没有空格) isBool : 查看字符串是否为布尔值 isVector : 查看 string 是否为 vector 文件 isImage : 查看字符串是否为图像文件 isAudio : 查看字符串是否为音频文件 isVideo : 查看字符串是否为视频文件 isTxt : 查看字符串是否为 txt 文本文件 isDocument : 查看字符串是否为 doc 文件 isExcel : 查看字符串是否为 excel 文件 isPPT : 查看字符串是否为 ppt 文件 isAPK : 查看字符串是否为 apk 文件 isPDF : 查看字符串是否为 pdf 文件 isHTML : 查看字符串是否为 html 文件 isURL : 查看字符串是否为 url 文件 isEmail : 查看字符串是否为 email 文件 isDateTime : 查看字符串是否为工夫 isMD5 : 查看字符串是否为 md5 isSHA1 : 查看字符串是否为 sha1 isSHA256 : 查看字符串是否为 sha256 isIPv4 : 查看字符串是否为 ipv4 isIPv6 : 查看字符串是否为 ipv6 isPalindrome : 查看字符串是否为回文 isCaseInsensitiveContains : 查看 a 是否蕴含 b(将大小写字母视为雷同或解释)。isCaseInsensitiveContainsAny : 查看 a 中是否蕴含 b 或 b 中是否蕴含 a(将大小写字母视为雷同)。isCamelCase : 查看字符串值是否驼峰大小写 isCapitalize : 查看字符串值是否大写
33. 转化相干工具类
-
转化相干的操作工具类
toBinary : 转换 int 值为二进制,比方:15 => 1111 toBinaryInt : 转换 int 值为二进制 fromBinary : 转换二进制为 int 值 capitalize : 字符串内的每个单词都要大写 capitalizeFirst : 字符串的首字母大写,其余字母小写 removeAllWhitespace : 删除字符串内的所有空格 numericOnly : 提取字符串的数值
34. 全局异样捕捉工具
-
针对 flutter 全局异样捕捉,能够应用:handle_exception
// 如果应用,在 main 办法中,如下所示:hookCrash(() {runApp(MainApp()); });
-
捕捉一场打印输出:
I/flutter (9506): yc e — — — — — — — — — — st — — — — — — — — — — — — — I/flutter (9506): yc e | handle_exception : e---->MissingPluginException(No implementation found for method getAll on channel plugins.flutter.io/shared_ I/flutter (9506): yc e | preferences) I/flutter (9506): yc e — — — — — — — — — — ed — — — — — — — — — ---— — I/flutter (9506): yc e handle_exception : stack---->
35. 解析数据工具类
- 解析 xml/html 数据工具类
36. 字节转化工具类
-
ByteUtils 转化相干的操作工具类
toBinary : 转换 int 值为二进制 toReadable : 将字节数组转换为可读字符串 toBase64 : 将字节数组转换为 base64 字符串 fromBase64 : 转换 base64 字符串到字节数组 clone : 克隆字节数组 same : 判断两个字节是否雷同 extract : 从字节序列中提取数据 combine : 将两个字节拼接 insert : 在字节某个索引处插入字节 remove : 在字节某个索引处移除字节
40. 其余相干工具类
40.2 随机工具类
-
RandomUtils
randomColor : 生成一个示意十六进制色彩的随机整数 randomString : 生成指定长度或随机长度的随机字符串 randInt : 在开始和完结之间生成一个随机数 randomElement : 从列表中返回一个随机元素
40.3 获取平台工具类
-
PlatformUtils。该工具类能够通过获取平台,而后设置一个 value 区别平台信息。
final value = PlatformUtils.select( ios: "ios", android: "android", web: "web", fuchsia: "fuchsia", macOS: () => "macOS", windows: () => "windows", linux: () => "linux",); // 后果,在 Android 设施上,value 就是:android
40.4 剪切板工具类
-
零碎工具类,次要是软键盘操作和复制内容到剪切板
copyToClipboard : 拷贝文本内容到剪切板 hideKeyboard : 暗藏软键盘,具体可看:TextInputChannel showKeyboard : 展现软键盘 clearClientKeyboard : 革除数据
我的项目地址:https://github.com/yangchong2…