v2.9.0mask_text_input_formatter
该包为 TextField 和 TextFormField 提供了 TextInputFormatter,可通过给定的掩码格式化输入。
1320喜欢 47.9万近 30 天下载160Pub 分数
AndroidiOSWebmacOSWindowsLinux
适用于 Flutter 的遮罩文本输入格式化程序。
{"sdk":"flutter"}{"sdk":"flutter"}以下为英文项目原文快照,最新内容请访问 GitHub。
Version Build Status codecov GitHub license
The package provides TextInputFormatter for TextField and TextFormField which format the input by a given mask.
logo
Check 'example' folder for code sample
example
Follow the install guide
Import the library:
import 'package:mask_text_input_formatter/mask_text_input_formatter.dart';
var maskFormatter = new MaskTextInputFormatter(
mask: '+# (###) ###-##-##',
filter: { "#": RegExp(r'[0-9]') },
type: MaskAutoCompletionType.lazy
);
TextField(inputFormatters: [maskFormatter])
Get masked text:
print(maskFormatter.getMaskedText()); // -> "+0 (123) 456-78-90"
Get unmasked text:
print(maskFormatter.getUnmaskedText()); // -> 01234567890
You can use the updateMask method to change the mask after the formatter was created:
var textEditingController = TextEditingController(text: "12345678");
var maskFormatter = new MaskTextInputFormatter(mask: '####-####', filter: { "#": RegExp(r'[0-9]') });
TextField(controller: textEditingController, inputFormatters: [maskFormatter]) // -> "1234-5678"
textEditingController.value = maskFormatter.updateMask(mask: "##-##-##-##"); // -> "12-34-56-78"