eyf_kit 0.0.7 copy "eyf_kit: ^0.0.7" to clipboard
eyf_kit: ^0.0.7 copied to clipboard

flutter kit

flutter kit usages document #

1、事件

1.1 事件快速点击处理

//使用示例
void onEvent(){
  if(ClickEvent.isFastClick()){
    return;
  }
  //这里处理你的业务逻辑...
}

2、系统方法

2.1 剪贴板使用

//获取剪贴板数据
ClipboardUtils.getClipboardData().then((text) => {
    //text剪贴板内容
});
//或
var text = await ClipboardUtils.getClipboardData();

//设置剪贴板数据
ClipboardUtils.setClipboardData(text);

3、常用工具类

3.1 json工具类

JsonUtils.toJson(Object? obj) //将对象转换为json字符串

Map<String, dynamic> map = JsonUtils.fromJson(String data) //从json字符串转换为map对象
  
List list = JsonUtils.fromList(String data) //从json字符串转换为list列表

/// 从json字符串得到某个属性值
/// 示例:
/// JsonUtils.getValue("name",'{"name":"china","date":"2024"}') //输出china
/// [keyName] 属性名
/// [json] json内容
/// [isFillWhitespace] 是否去除json字符串的空格或换行符
var value = JsonUtils.getValue({String keyName = "", String json = "", bool isFillWhitespace = false})

3.2 SoftUtils工具类

SoftUtils.hideSoft(BuildContext context) //隐藏软键盘

3.3 倒计时工具类

var countdown = CountdownTimer();

/// 根据剩余时间倒计时
/// [restOfTime] 剩余时间(单位毫秒)
/// [callback] 回调(null时不做计时处理)
/// [step] 计时步长默认1秒回调一次
countdown.startCountdown(int restOfTime, CountdownCallback? callback, {int step = 1000})

/// 根据开始结束时间倒计时
/// [startTime] 开始时间(单位毫秒)
/// [endTime] 结束时间(单位毫秒)
/// [callback] 回调
/// [step] 计时步长默认1秒回调一次
countdown.start(int startTime, int endTime, CountdownCallback callback, {int step = 1000})

/// 停止倒计时
countdown.stop()

/// 剩余时间差
countdown.diffTime

3.4 按天、小时、分、秒计时器

var timing = TimingCount();
//开始计时
timing.start(void Function(int days, int hours, int minutes, int seconds) callback, {int step = 1000})

timing.stop() //停止计时

timing.duration; //计时持续时间

4、扩展

4.1 dynamic扩展

var result = "false";
var status = result.isTrue; //输出true or false

enum Gender { male, female }
Gender.female.name //name扩展,输出枚举名称

var num = "111";
var digit = num.isNumeric; //判断是否为数字类型,输出true or false

4.2 Object扩展

var result = "11"
result.toDouble() //输出11.0

4.3 String扩展

var uri = "xxxx?name=11&age=2"
uri.toMap("&",secondSplit:"=",true) //输出map类型:{"name":"11","age":"2"}

//根据连接字符拼接的字符串转换成list
"2&71&3&25".toList("&")
  
//url参数合并,返回合并后url
var uri = "xxxx?name=11&age=2"
var uri2 = "xxxx?name2=22"
uri2.toMergeUrl(uri) //输出:uri="xxxx?name=11&age=2&name2=22"

//数字字符转换为num(eg. for long float)
2.toNum()

//金额格式化
"20.3".toFormatString("#.##") //输出: 20.30

//sha1加密
"123456".toSha1 //输出:7c4a8d09ca3762af61e59520943dc26494f8941b
  
//sha256加密
"123456".toSha256 //输出:8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92
  
//生成md5
"123456".generateMd5 //输出:e10adc3949ba59abbe56e057f20f883e

4.4 double扩展

var n=12.3;
n.doubleInt; //输出:12

//double is null or 0
n.isNullOrZero; //输出:false

//--
n.reduce(3); //输出:9.3

//++
n.add(3); //输出:15.3

//保留小数位数
n.toFormatString("#.##"); //输出:12.30

4.5 int扩展

var n=12;

//int is null or 0
n.isNullOrZero; //输出:false

//--
n.reduce(3); //输出:9

//++
n.add(3); //输出:15

//时间戳转换本地时间
var timestamp = xxxxx;
timestamp.toLocalTime(isUtc:true); //DateTime格式

其它扩展参考代码extend目录文件代码

0
likes
115
points
96
downloads

Publisher

unverified uploader

Weekly Downloads

flutter kit

Homepage

Documentation

API reference

License

unknown (license)

Dependencies

crypto, flutter, intl, path

More

Packages that depend on eyf_kit