一个用户登录页面

输入校验

import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';void main() {debugPaintSizeEnabled = false;runApp(new LoginAlertDemoApp());
}class LoginAlertDemoApp extends StatelessWidget {@overrideWidget build(BuildContext context) {return new MaterialApp(theme: new ThemeData(primarySwatch: Colors.green,),home: Scaffold(body: new LoginHomePage(),));}
}class LoginHomePage extends StatefulWidget {@override_LoginHomePageState createState() {// TODO: implement createStatereturn new _LoginHomePageState();}
}class _LoginHomePageState extends State<LoginHomePage> {@overrideWidget build(BuildContext context) {return Stack(children: <Widget>[Column(mainAxisSize: MainAxisSize.max,crossAxisAlignment: CrossAxisAlignment.center,children: <Widget>[Container(height: 120.0,alignment:Alignment.centerLeft,padding: EdgeInsets.only(left:30.0),color: Colors.white,child: Icon(Icons.access_alarm),),Container(color: Colors.white,alignment: Alignment.center,padding: EdgeInsets.only(left:30.0,right: 30.0),child: new Container(child: buildForm(),),),],),],);}TextEditingController unameController = new TextEditingController();TextEditingController pwdController = new TextEditingController();GlobalKey formKey = new GlobalKey<FormState>();Widget buildForm() {return Form(//设置globalKey,用于后面获取FormStatekey: formKey,//开启自动校验autovalidate: true,child: Column(children: <Widget>[TextFormField(autofocus: false,keyboardType: TextInputType.number,//键盘回车键的样式textInputAction: TextInputAction.next,controller: unameController,decoration: InputDecoration(labelText: "用户名或邮箱",hintText: "用户名或邮箱",icon: Icon(Icons.person)),// 校验用户名validator: (v) {return v.trim().length > 0 ? null : "用户名不能为空";}),TextFormField(autofocus: false,controller: pwdController,decoration: InputDecoration(labelText: "密码", hintText: "您的登录密码", icon: Icon(Icons.lock)),obscureText: true,//校验密码validator: (v) {return v.trim().length > 5 ? null : "密码不能少于6位";}),// 登录按钮Padding(padding: const EdgeInsets.only(top: 28.0),child: Row(children: <Widget>[Expanded(child: RaisedButton(padding: EdgeInsets.all(15.0),child: Text("登录"),color: Theme.of(context).primaryColor,textColor: Colors.white,onPressed: () {//在这里不能通过此方式获取FormState,context不对//print(Form.of(context));// 通过_formKey.currentState 获取FormState后,// 调用validate()方法校验用户名密码是否合法,校验// 通过后再提交数据。if ((formKey.currentState as FormState).validate()) {//验证通过提交数据}},),),],),)],),);}}

flutter 一个用户登录页面相关推荐

  1. 3、Vue+ElementUI制作用户登录页面

    前面两篇简单了解了一下vue和SPA,现在来用Vue+ElementUI做一个用户登录页面,ElementUI是Element出的一套针对vue的UI库,类似的UI库非常多,ElementUI只是其中 ...

  2. html网页设计一个简单的用户登录页面

    结果 代码 login.html <!DOCTYPE html> <html lang="en"> <head><meta charset ...

  3. Flask初识,第五篇 ,做一个用户登录之后查看学员信息的小例子

    Flask最强攻略 - 第五篇 做一个用户登录之后查看学员信息的小例子 需求: 1. 用户名: oldboy 密码: oldboy123 2. 用户登录成功之后跳转到列表页面 3. 失败有消息提示,重 ...

  4. Vue.js-Day09【项目实战(附带 完整项目源码)-day04:用户个人中心页面、用户登录页面、将项目打包部署到服务器上、项目汇报、实训心得】

    Vue.js实训[基础理论(5天)+项目实战(5天)]博客汇总表[详细笔记] 实战项目源码[链接:https://pan.baidu.com/s/1r0Mje3Xnh8x4F1HyG4aQTA   提 ...

  5. 限制在同一台电脑上只允许有一个用户登录系统

    在web应用系统中,出于安全性考虑,经常需要对同一客户端登录的用户数量和一个客户同时在多个客户端登陆进行限制. 具体一点就是: 1.在同一台电脑上一次只允许有一个用户登录系统: 2.一个用户在同一时间 ...

  6. java限制在同一台电脑上只允许有一个用户登录系统

    在web应用系统中,出于安全性考虑,经常需要对同一客户端登录的用户数量和一个客户同时在多个客户端登陆进行限制. 具体一点就是: 1.在同一台电脑上一次只允许有一个用户登录系统: 2.一个用户在同一时间 ...

  7. HTML+CSS:设计一个网站登录页面 学起来很简单

    hello,大家好,我是wangzirui32,今天我们来学习如何设计一个网站登录页面. 开始学习吧! 1. 项目架构 demo/login.html 网页文件backgrond.png 登录背景图片 ...

  8. Python模拟一个用户登录系统

    题目:模拟一个用户登录系统,用户输入用户名和密码,输入正确即可进入系统 直接上代码: #模拟一个用户登录系统,用户输入用户名和密码,输入正确即可进入系统 d=['yao','123456']while ...

  9. 【html】【一个简单的用户登录页面代码】

    结果 代码 <!DOCTYPE html> <html><head><title>用户登录.html</title><meta htt ...

最新文章

  1. 贵州高二会考计算机考试题,20167月贵州普通高中学业水平考试会考试题
  2. 物体的三维识别与6D位姿估计:PPF系列论文介绍(五)
  3. No IP specified. Please specify IP with ‘objects’
  4. jvm系列(十):如何优化Java GC「译」
  5. Matlab | Matlab从入门到放弃(12)——基于Matlab的特征值与奇异值分解
  6. 牛客网_PAT乙级_1029有几个PAT(25)【输入字符串并strlen计算长度】
  7. python内置函数返回序列中最大元素_Python之路(第八篇)Python内置函数、zip()、max()、min()...
  8. php 安装php soap.dll,php_soap.dll下载
  9. 目录:所以文章的目录
  10. Android中CursorLoader的使用、原理及注意事项
  11. css3-ghostButton
  12. python怎么画简单图-Python | 用matplotlib画些简单的图
  13. 拓端tecdat|R语言中的隐马尔可夫HMM模型实例
  14. 一款免费、炫酷的GUI:AWTK
  15. python中delay__python delay函数
  16. 树莓派运行python命令_《树莓派Python编程入门与实战》——2.2 使用Raspbian命令行...
  17. ffmpeg命令行将ts转码为mp4
  18. 微信公众号自定义服务器,微信公众号自定义服务器的第一次验证
  19. bdtrans 一个命令行下的机器翻译工具
  20. BaseFx实习小记(三)

热门文章

  1. Github趋势榜第一!英伟达发布StyleGAN2,生成图像逼真到吓人
  2. ChinaMM竞赛:低光照人脸检测
  3. ECCV18|这篇论文开源的车牌识别系统打败了目前最先进的商业软件(附Github地址)...
  4. Numpy | Python列表与Numpy数组对比
  5. 2020 ACM Fellow放榜!陈怡然、颜水成、周昆等12名华人当选
  6. 重磅 | 2019年“中国计算机学会CCF优秀博士学位论文奖”评选结果公告
  7. 深度学习(四十五)条件对抗网络
  8. Tensorboard可视化:基于LeNet5进行面部表情分类
  9. 信安精品课:第2章网络攻击原理与常用方法精讲笔记
  10. gsea结果分析图怎么看_微信公众平台数据分析怎么看