获取用户的输入用

TextField 或者TextFormField 的实现,通过控制器来实现获取用户的输入。

1 TextField 的属性

const TextField({Key key,this.controller,this.focusNode,// 这个属性可以用来监听输入框是否获取this.decoration = const InputDecoration(),TextInputType keyboardType,this.textInputAction,this.textCapitalization = TextCapitalization.none,this.style,this.textAlign = TextAlign.start,   //类似Text组件this.textDirection,   //类似Text组件this.autofocus = false,this.obscureText = false,// 密文/明文显示this.autocorrect = true,this.maxLines = 1,this.maxLength,this.maxLengthEnforced = true,this.onChanged,this.onEditingComplete,this.onSubmitted,this.inputFormatters,this.enabled,this.cursorWidth = 2.0,this.cursorRadius,this.cursorColor,this.keyboardAppearance,this.scrollPadding = const EdgeInsets.all(20.0),this.enableInteractiveSelection = true,this.onTap,
})

2 输入框的样式 InputDecoration

const InputDecoration({this.icon,  //输入框前面的图片(在下划线外面)this.labelText,  //顶部提示文字(获取焦点之后会移动到输入框上方)this.labelStyle,this.helperText,  //底部提示文字(不会移动)this.helperStyle,this.hintText,  //占位文字this.hintStyle,this.errorText,  //类似helperTextthis.errorStyle,this.errorMaxLines,this.hasFloatingPlaceholder = true,this.isDense,this.contentPadding,  //输入内容的边距,默认有一个边距,可以手动设置this.prefixIcon, //输入框前面的图片(在下划线里面)this.prefix,this.prefixText,this.prefixStyle,this.suffixIcon,  //输入框后面的图片(在下划线里面)this.suffix,this.suffixText,this.suffixStyle,this.counterText,this.counterStyle,this.filled,this.fillColor,this.errorBorder,this.focusedBorder,this.focusedErrorBorder,this.disabledBorder,this.enabledBorder,this.border,   //输入框边框线(默认是下划线,也可以是none,也可以是一个框)this.enabled = true,this.semanticCounterText,
})

3 获取回调

  • 如何获取回调的值 第一种方式就是通过onchanged 方式获取,
// 每一次的输入都会调用次方法
onChanged: (text){
print(text);
},
  • 第二种就是通过设置控制器来获取。在iOS中就是相当于代理吧。

可以获取输入的值 清空输入的值,设置输入的值

import 'dart:io';import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';import 'dart:convert';
void main() => runApp(MyApp());class MyApp extends StatelessWidget {// This widget is the root of your application.@overrideWidget build(BuildContext context) {return MaterialApp(theme: ThemeData(primarySwatch: Colors.blue,),home: MyForm(),);}
}class MyForm extends StatefulWidget{MyForm({Key key}) : super(key:key);@override_MyFormState createState() =>  _MyFormState();}class _MyFormState extends State<MyForm>{final myVC = TextEditingController();// show logvoid showTip(BuildContext context){        Scaffold.of(context).showSnackBar(new SnackBar(content: new Text(myVC.text),));}@overridevoid dispose(){// 销毁组件的时候 销毁控制器myVC.dispose();super.dispose();}@overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text("Hello World"),),body: Padding(padding: const EdgeInsets.all(20),child: Column(children: <Widget>[TextField(// 设置vccontroller: myVC,// 提示decoration: InputDecoration(prefixIcon: Icon(Icons.lock),labelText: "手机号码",// 提示字体的颜色hintStyle: TextStyle(color: Colors.green),hintText: "请输入手机号码"), // 每一次的输入都会调用次方法               onChanged: (text){print(text);},  ),RaisedButton(child: Text("我输入了什么东西???"),onPressed: (){                                              print(myVC.text);// 清空字体myVC.clear();// 设置字体myVC.text = "OKTOGO";},),],)),);}}

12-flutter Textfield的使用相关推荐

  1. flutter TextField 输入框被软键盘挡住的解决方案

    flutter TextField 输入框被软键盘挡住的解决方案 参考文章: (1)flutter TextField 输入框被软键盘挡住的解决方案 (2)https://www.cnblogs.co ...

  2. Flutter TextField 设置默认值和光标位置

    Flutter TextField 是一个文本输入框,可以结合使用 TextEditingController 来获取输入框中的内容以及设置 TextField 中默认显示的内容 TextEditin ...

  3. flutter TextField 属性详细分析

    flutter TextField 属性 简单的进行了归纳,有些是仅凭字面翻译. flutter TextField中的InputDecoration属性 TextField({Key key,thi ...

  4. Flutter TextField 交互实例 —— 新手礼包

    大家好,我是 17. 新手礼包一共 3 篇文章,每篇都是描述尽量详细,实例讲解,包会! Flutter Row 实例 -- 新手礼包 Flutter TextField UI 实例 -- 新手礼包 F ...

  5. Flutter TextField 边框样式以及提示文本 、Flutter输入文本TextField

    题记 -- 执剑天涯,从你的点滴积累开始,所及之处,必精益求精. github? 你可能需要 百度同步 CSDN 网易云课堂教程 掘金 知乎 Flutter系列文章 头条同步 本文章首发于微信公众号( ...

  6. flutter TextField 输入框组件

    TextField 顾名思义文本输入框,类似于iOS中的UITextField和Android中的EditText和Web中的TextInput.主要是为用户提供输入文本提供方便.相信大家在原生客户端 ...

  7. Flutter TextField自定义

    网恋3要素 : 看微信是否实名.对方是否留手机号码.是否经常与对方视频 pubspec.yaml 文件里面配置图片依赖 # For information on the generic Dart pa ...

  8. 20 Flutter TextField单行文本和多行文本

    TextField单行文本框和多行文本框 1.TextField ​ --------基本等价于Android中EditText,其中属性都有很多一致 1.属性 const TextField({ K ...

  9. Flutter TextField限制输入仅数字,字母,以及数字键盘,搜索完成设置

    import 'package:flutter/material.dart'; import 'package:flutter/services.dart';TextField(inputFormat ...

  10. Flutter TextField详解

    文章目录 基本属性 TextField InputDecoration 样式 基础样式 隐藏文本 键盘类型 键盘按钮 大小写 光标 最多行数 计数器 图标 提示文字 去除下划线 边框 获取输入内容 关 ...

最新文章

  1. PHP SSL certificate: unable to get local issuer certificate的解决办法
  2. C++知识点杂记2——类成员指针、嵌套类和union
  3. for循环优化_前端js if判断以及for循环该如何写的更好,优化upup
  4. python在sql添加数据库_使用Python创建MySQL数据库实现字段动态增加以及动态的插入数据...
  5. OpenCV方向梯度直方图HOG的实例(附完整代码)
  6. jquery动态改变onclick属性导致失效的问题解决方法
  7. django-restframework使用
  8. 深入理解并行编程-分割和同步设计(四)
  9. 浅谈SCOM Agent的心跳响应机制
  10. signalr中Group 分组群发消息的简单使用
  11. java 多线程——一个定时调度的例子
  12. linux shell中获取mongodb最大连接数、内存使用情况等
  13. php sqlite创建表,php – 使用SQLite创建列表树
  14. android版chrome为什么没有扫,android – 无法使用谷歌条码扫描仪
  15. Windows 10如何自定义任务栏上的程序
  16. WEBPACK+ES6+REACT入门(2/7)-在项目中使用react以及JSX语法介绍
  17. python 爬取网易云音乐歌单
  18. 来了 | Python 官方发布整套中文PDF文档(共27本)
  19. DIN数据电缆行业现状调研及趋势分析报告
  20. android编程实例-音乐播放器之歌词显示

热门文章

  1. 一个winform带你玩转rabbitMQ
  2. 两台ubuntu虚拟机环境下hadoop安装配置
  3. spark1.4加载mysql数据 创建Dataframe及join操作连接方法问题
  4. Xcode 添加代码块
  5. rpath和runpath的区别
  6. 深入理解PHP原理之变量分离/引用(Variables Separation)
  7. 堆状态分析的利器——valgrind的DHAT
  8. Python3中Pillow(PIL)介绍
  9. 经典网络AlexNet介绍
  10. SIFT特征点匹配中KD-tree与Ransac算法的使用