第二百零五回

2024-02-04 02:20
文章标签 第二百 零五回

本文主要是介绍第二百零五回,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1. 概念介绍
  • 2. 实现方法
    • 2.1 文字信息
    • 2.2 红色边框
  • 3. 示例代码
  • 4. 内容总结

我们在上一章回中介绍了"如何实现密码输入框"相关的内容,本章回中将介绍如何在在输入框中提示错误.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1. 概念介绍

我们在本章回介绍的内容还与输入框有关,输入框仍然使用TextField组件实现。我们主要介绍如何在输入框中提示错误。具体的现象是输入框下方显示错误文字信息,
同时输入框显示红色边框。这相当于使用文字信息和颜色来发出错误提示。本章回中将介绍如何实现这些错误提示。

2. 实现方法

输入框中的错误信息都是通过TextField组件的属性实现的,我们在接下来的小节中分别介绍文字信息和红色方框的实现方法。

2.1 文字信息

文字信息主要通过InputDecoration组件的errorText属性实现,同时我们需要把InputDecoration组件赋值给TextField组件的decoration属性,这样才能在
输入框下方显示文字信息。errorText属性比较特殊,当它的值为null时不会显示任何文字,当它的值不为null时就会显示文字信息,文字信息位于输入框下方,而且
文字的颜色是红色。开发人员只需要给errorText属性赋值就可以,其它的事情不需要去关注。

2.2 红色边框

红色边框主要通过InputDecoration组件的errorBorder属性实现,同时我们需要把InputDecoration组件赋值给TextField组件的decoration属性,这样才
能在输入框周围显示红色边框。errorBorder属性比较特殊,当errorText属性的值为null时不会显示红色边框,当errorText属性的值不为null时就会显示红色边
框,边框环绕在整个输入框周围。开发人员只需要给errorText属性赋值就可以,其它的事情不需要去关注。

3. 示例代码

TextField(obscureText: !isPasswordVisible,keyboardType: TextInputType.text,decoration: InputDecoration(///这两个一起使用才有填充颜色filled: true,fillColor: Colors.grey[200],///属性值不为空时(!= null)显示errorText,errorText: isPwdEmpty? "password is empty": null,///用来去掉输入框下面的横线border: InputBorder.none,///实现显示和隐藏密码功能suffixIcon: IconButton(icon:isPasswordVisible ? const Icon(Icons.visibility) : const Icon(Icons.visibility_off),onPressed: () {setState(() {isPasswordVisible = !isPasswordVisible;});},),///失去焦点并且errorText的值不为null时就显示errorBorder: OutlineInputBorder(borderSide: const BorderSide(color:Colors.red,width: 1),borderRadius: BorderRadius.circular(16),),),///这里的值配合配合border一起实现红色边框错误提示功能onChanged: (value) {setState(() {if(value == "" || value.isEmpty) {pwdValue = "";isPwdEmpty = true;}else {pwdValue = value;isPwdEmpty = false;}});},
),

上面的示例代码演示了如何在输入框中提示错误,错误包含文本信息和红色方框,它们都通过isPwdEmpty这个bool类型的变量来控制,我们会在onChanged属性中判
断输入框中值,如果输入框中输入的值为空就把isPwdEmpty设置为true,同时更新组件的状态值;反之将isPwdEmpty的值设置为false。组件中的errorText属性
和errorBorder属性检查到isPwdEmpty的值为false时就会在输入框下方显示错误文字信息,同时在输入框周围显示红色边框。

4. 内容总结

最后,我们对本章回的内容做一个全面总结:

  • 输入框基于TextField组件实现,它会通过decoration属性来显示错误信息;
  • 输入框中的错误信息包信错误文字和红色方框两部分,它们会同时出现输入框中;
  • 错误信息通过InputDecoration组件的errorText属性来控制;
  • 红色方框通过InputDecoration组件的errorBorder属性来实现;
  • 我们需要在输入框的onChanged属性中判断输入的内容,然后更新TextFiled组件的状态;
    看官们,与"如何在在输入框中提示错误"相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

这篇关于第二百零五回的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/676120

相关文章

第二百零九节 Java格式 - Java数字格式类

Java格式 - Java数字格式类 以下两个类可用于格式化和解析数字: java.text.NumberFormatjava.text.DecimalFormat NumberFormat 类可以格式化一个数字特定地区的预定义格式。 DecimalFormat 类可以格式化数字以特定区域设置的自定义格式。 NumberFormat类的 getXXXInstance()方法返回格式化

第二百零四节 Java正则表达式教程 - Java正则表达式量词

Java正则表达式教程 - Java正则表达式量词 我们可以指定正则表达式中的字符的次数可以匹配字符序列。 为了使用正则表达式表达一个数字或更多的模式,我们可以使用量词。 下表列出了量词及其含义。 量词含义*零次或更多次+一次或多次?一次或根本不{m}正好m次{m,}至少m次{m,n}至少m,但不超过n次 量词必须遵循字符或字符类。 例子 import java.util.reg

一起Talk Android吧(第二百三十七回:Android中的Intent)

各位看官们大家好,上一回中咱们说的是Android中四大组件的例子,这一回咱们说的例子是Intent。闲话休提,言归正转。让我们一起Talk Android吧! 看官们,我们在本章回中将介绍Intent,它也是常用的知识,四大组件中有三大组件都使用它,比如打开Activity,绑定服务,发送广播。我们在代码中都看到过Intent的身影。 Intent可以显式和隐式两种; 显式Intent中包含

一起Talk Android吧(第二百三十六回:Android中的四大组件概述)

各位看官们大家好,上一回中咱们说的是Android中数据存储大结局的例子,这一回咱们说的例子是四大组件。闲话休提,言归正转。让我们一起Talk Android吧! 看官们,我们在这一回中介绍一下Android中的四大组件,它们是 ActivityServiceBroadcastContentProvider。 其实这些内容我们都介绍过,接下来我们一起回顾一下这些知识. Activity是程

一起Talk Android吧(第二百三十四回:Android中的数据存储之ContentProvider二)

各位看官们大家好,上一回中咱们说的是Android中数据存储之ContentProvider的例子,这一回咱们继续说该例子。闲话休提,言归正转。让我们一起Talk Android吧! 看官们,我们在上一回中介绍了如何通过ContentProvider读取联系人模块中的数据,下面是完整的代码,请大家参考: package com.example.talk8.blogappall;import a

一起Talk Android吧(第二百三十二回:Android中的数据存储之ContentProvider概述)

各位看官们大家好,上一回中咱们说的是Android中数据存储之数据库的例子,这一回咱们说的例子是ContentProvider。闲话休提,言归正转。让我们一起Talk Android吧! 看官们,contentProvider也叫内容提供器,它主要用来在应用程序之间共享数据,因此,我们把它当作一种数据存储方式。它通常有两种使用场景: 使用它访问其它应用中的数据;定义它并且提供接口让其它程序来访

第二百零四回

文章目录 1. 概念介绍2. 实现方法2.1 使用Steam实现2.2 使用Timer实现 3. 示例代码4. 内容总结 我们在上一章回中介绍了"如何实现每隔一段时间执行某项目任务"相关的内容,本章回中将介绍如何实现倒计时功能.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 倒计时功能估计大家都熟悉,经常用在一些节目开始或者开奖活动中。程序中也会用到倒计时

第二百九十八回

文章目录 1. 概念介绍2. 方法与原理2.1 实现方法2.2 实现原理 3. 示例代码4. 内容总结 我们在上一章回中介绍了"再谈showMenu的用法",本章回中将介绍如何实现每隔一段时间执行某项任务.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 在实际项目中会有定时执行任务的需求,比如每隔1秒去发送网络心跳包,对于这样的需求,可以通过Stream

第二百九十六回

文章目录 1. 概念介绍2. 基本用法3. 补充用法4. 内容总结 我们在上一章回中介绍了"再谈ListView中的分隔线",本章回中将介绍如何如何处理ListView中的事件冲突.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们在第一百六十三回中介绍了showMenu相关的内容,它主要用来显示移动PopupMenu在页面中的位置。如果大家忘记的话,可以

第二百九十五回

文章目录 1. 概念介绍2. 使用方法3. 示例代码4. 内容总结 我们在上一章回中分享了一个好用的Json工具,本章回中将介绍如何处理ListView中的事件冲突.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 在Flutter应用开发中,ListView组件是实现滚动列表展示内容的基石。当我们在ListView的item项上添加点击跳转功能时,通常会