直播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>} |
使用方法
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开发搭建,封装验证码输入框, 更多内容欢迎关注之后的文章
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
2021-12-14 直播系统源代码,按钮图片和文字位置的各种设置
2021-12-14 短视频app源码,实现原生js图片预览效果
2021-12-14 android短视频开发,仿三方软件列表滑动