GetUtils 是 getx 为我们提供一些常用的工具类库,包括值是否为空、是否是数字、是否是视频、图
片、音频、PPT、Word、APK、邮箱、手机号码、日期、MD5、SHA1等等。
class HomePage extends StatefulWidget {
const HomePage({super.key});
@override
State<HomePage> createState() => _HomePageState();
} class _HomePageState extends State<HomePage> {
var textFieldController = TextEditingController();
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('Title'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Padding(
padding: const EdgeInsets.all(20),
child: TextField(
controller: textFieldController,
),
),
const SizedBox(
height: 10,
),
Padding(
padding: const EdgeInsets.all(10),
child: ElevatedButton(
child: const Text("判断是否是邮箱"),
onPressed: () async {
if (GetUtils.isEmail("1178942341@qq.com")) {
Get.snackbar("正确", "恭喜你, 完全正确",
backgroundColor: Colors.greenAccent);
} else {
Get.snackbar("邮箱错误", "请输入正确的邮箱",
backgroundColor: Colors.pink);
}
},
),
),
Padding(
padding: const EdgeInsets.all(10),
child: ElevatedButton(
child: const Text("判断是否是手机号"),
onPressed: () async {
if (GetUtils.isPhoneNumber(textFieldController.text)) {
Get.snackbar("正确", "恭喜你, 完全正确",
backgroundColor: Colors.greenAccent);
} else {
Get.snackbar("手机号错误", "请输入正确的手机号",
backgroundColor: Colors.pink);
}
},
),
),
Padding(
padding: EdgeInsets.all(10),
child: ElevatedButton(
child: Text("判断是否是IPv4"),
onPressed: () async {
if (GetUtils.isIPv4(textFieldController.text)) {
Get.snackbar("正确", "恭喜你, 完全正确",
backgroundColor: Colors.greenAccent);
} else {
Get.snackbar("地址错误", "请输入正确的IPv4地址",
backgroundColor: Colors.pink);
}
},
),
),
],
),
),
);
}
}

GetX GetUtils的更多相关文章

  1. 12.创建一个Point类,有成员变量x,y,方法getX(),setX(),还有一个构造方 法初始化x和y。创建类主类A来测试它。

    package java1; public class Point { int x; int y; Point(int x,int y) { this.x = x; this.y = y; } pub ...

  2. 创建一个Point类,有成员变量x,y,方法getX(),setX(),还有一个构造方 法初始化x和y。创建类主类A来测试它

    package com.hanqi.test; public class Point { private int x; private int y; Point(int xx,int yy) { x= ...

  3. Android MotionEvent getX() getY() getRawX() getRawY() and View getTop() getLeft()

    getRowX:触摸点相对于屏幕的坐标getX: 触摸点相对于按钮的坐标getTop: 按钮左上角相对于父view(LinerLayout)的y坐标getLeft: 按钮左上角相对于父view(Lin ...

  4. android MotionEvent中getX()和getRawX()的区别

    public class Res extends Activity implements View.OnTouchListener { Button btn = null; int x = 0; in ...

  5. MotionEvent中getX()和getRawX()的区别

    http://blog.csdn.net/ztp800201/article/details/17218067 public class Res extends Activity implements ...

  6. MotionEvent的getX(),getY()与getRawX(),getRawY()区别

    getX()是表示Widget相对于自身左上角的x坐标,而getRawX()是表示相对于屏幕左上角的x坐标值(注意:这个屏幕左上角是手机屏幕左上角,不管activity是否有titleBar或是否全屏 ...

  7. Android开发之getX,getRawX,getWidth,getTranslationX等的区别

    转载请注明出处:http://blog.csdn.net/dmk877/article/details/51550031      好久没写博客了,最近工作确实挺忙的,刚刚结束了一个TV项目的开发,对 ...

  8. Android View坐标系详解(getTop()、getX、getTranslationX...)

    View 提供了如下 5 种方法获取 View 的坐标:1. View.getTop().View.getLeft().View.getBottom().View.getRight();2. View ...

  9. View坐标系详解(getTop(),getLeft(),getX(),getY(),getLocationOnScreen(), getLocationInWindow())

    View 提供了如下 5 种方法获取 View 的坐标:1. View.getTop().View.getLeft().View.getBottom().View.getRight();2. View ...

  10. MotionEvent的getX(),getY()与getRawX(),getRawY()区别

    在Android的View中getX  getRawX获取的坐标是不一样的,只是相对比照的对象不一样而已. 1.在View中: getX()是表示Widget相对于自身左上角的x坐标,而getRawX ...

随机推荐

  1. CalledFromWrongThreadException

    更新UI的位置不正确,线程解析数据    handler. mssage 中更新 android.view.ViewRootImpl$CalledFromWrongThreadException: O ...

  2. Kbaor_2023_9_28_Java第一次实战项目_ELM_V1_食品的实体类、工具类与实现类

    Kbaor_2023_9_28_Java第一次实战项目_ELM_V1_食品的实体类.工具类与实现类 ELM_V1_食品的实体类 package elm_V1; /** * [食品实体类] * * @a ...

  3. 如何使用markdown

    关于如何使用markdown写博客 markdown的语法 代码的插入 电脑Table建上面上面的键输入三个点``` 然后输入语言+回车 c语言中第一个程序 #include<stdio.h&g ...

  4. JUC并发编程学习笔记(十四)异步回调

    异步回调 Future设计的初衷:对将来的某个事件的结果进行建模 在Future类的子类中可以找到CompletableFuture,在介绍中可以看到这是为非异步的请求使用一些异步的方法来处理 点进具 ...

  5. C++ 入门防爆零教程(上册)

    ## C++ 入门防爆零教程(上册) ######  C++ Introductory Explosion Proof Zero Tutorial(Volume $1$) 编写者:美公鸡(洛谷账号:b ...

  6. Altium designer 设置覆铜与板框间距

    新版Altium designer不再推荐使用 Keep-Out 层作为板框 以前使用 Keep-Out 作为板框的一个很大原因是因为 Keep-Out 自带板框间距属性.省去甚至不用考虑铺铜的边缘问 ...

  7. SNN_文献阅读_Effective and Efficient Computation with Multiple-timescaleSpiking Recurrent Neural Networks

    Adaptive SRNN 基于多时间尺度脉冲循环神经网络的高效计算(SRNN) 中心思想: 使用替代梯度进行训练,克服SNN中梯度不连续的问题. 在PyTorch中直接使用BPTT进行训练. 结构 ...

  8. java笔记——面向对象

    1.概述:面向对象是基于面向过程的编程思想 举例:把大象装进冰箱 2.开发:不断的创建对象,使用对象,指挥对象做事情 3.面向对象特征:封装 , 继承 , 多态 4.类和对象的关系: 类是一组相关的属 ...

  9. HBase|idea使用hbase进行简单的DDL增删改查

    老师要测试什么的,所以我想练习一下,顺便记录在博客里,如有错误,敬请指正,谢谢!!! idea连接hbase 首先确保你可以打开Hbase http://192.168.40.100:16010 查看 ...

  10. 文心一言 VS 讯飞星火 VS chatgpt (151)-- 算法导论12.2 7题

    七.用go语言,对于一棵有 n 个结点的二叉搜索树,有另一种方法来实现中序遍历,先调用 TREE-MINIMUM 找到这棵树中的最小元素,然后再调用 n-1 次的 TREE-SUCCESSOR.证明: ...