直播软件app开发,验证码输入框的简单封装

直播软件app开发,验证码输入框的简单封装

封装验证码输入框

自定义一个CustomOtpInput 类,继承自 StatelessWidget

CustomOtpInput 需要接收 TextEditingController 和 autoFocus 控制

设计输入需要展示的样式

onChanged 文本内容改变之后,需要自动跳转到下一步

基于上面的四点,我们来看一下完整的代码

 

1
<br>class CustomOtpInput extends StatelessWidget {<br>  final TextEditingController controller;<br>  final bool autoFocus;<br>  const CustomOtpInput(<br>      {Key? key, required this.controller, required this.autoFocus})<br>      : super(key: key);<br>  @override<br>  Widget build(BuildContext context) {<br>    return SizedBox(<br>      width: 50,<br>      height: 60,<br>      child: TextField(<br>        autofocus: autoFocus,<br>        controller: controller,<br>        // 项目主题色<br>        cursorColor: Theme.of(context).primaryColor,<br>        decoration: const InputDecoration(<br>          border: OutlineInputBorder(),<br>          counterText: '',<br>        ),<br>        onChanged: (value) {<br>          if (value.length == 1) {<br>            FocusScope.of(context).nextFocus();<br>          }<br>        },<br>      ),<br>    );<br>  }<br>}<br> 

使用方法

 

1
<br>Row(<br>        mainAxisAlignment: MainAxisAlignment.spaceEvenly,<br>        children: [<br>          CustomOtpInput(<br>              controller: model.controller1, autoFocus: model.focusBool1),<br>          CustomOtpInput(<br>              controller: model.controller2, autoFocus: model.focusBool2),<br>          CustomOtpInput(<br>              controller: model.controller3, autoFocus: model.focusBool3),<br>          CustomOtpInput(<br>              controller: model.controller4, autoFocus: model.focusBool4),<br>        ],<br>      )

 

 以上就是 直播软件app开发,验证码输入框的简单封装,更多内容欢迎关注之后的文章

 

posted @   云豹科技-苏凌霄  阅读(24)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
历史上的今天:
2021-12-01 短视频系统源代码,使用软件时保持屏幕常亮
2021-12-01 直播软件开发,通过js动态设置字体大小
2021-12-01 读书APP源码,搜索栏模糊处理实现
点击右上角即可分享
微信分享提示