主要是新建一个文本格式类,继承TextInputFormatter,在内部进行精确控制
实现整数位及小数位的长度控制,小数位为零即限定整数长度,限制以点开头及00,01,02这种非法输入
上代码
import 'package:flutter/services.dart';
///数字输入的精确控制
class TextNumberLimitFormatter extends TextInputFormatter {
int _declen;
int _intlen;
TextNumberLimitFormatter(this._intlen,this._declen);
RegExp exp = new RegExp("[0-9.]");
static const String POINTER = ".";
static const String ZERO = "0";
@override
TextEditingValue formatEditUpdate(
TextEditingValue oldValue, TextEditingValue newValue) {
///输入完全删除
if

这篇博客介绍了如何在Flutter的TextField中实现数字的精确限定,通过自定义TextInputFormatter来控制整数位和小数位的长度,避免非法输入如以点开头、00到09等。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



