搜索插件、代码仓与 APP 分类

插件详情v3.0.1

extended_masked_text

一组小型自定义 TextEditingControllers,可为 Flutter 应用程序提供掩码文本输入功能

AndroidiOSmacOSWindowsLinux
近 30 天下载
2.4万
喜欢数
147
Pub 分数
160

安装插件

flutter pub add extended_masked_text

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

ExtendedMaskedText 是一个 Flutter 包,提供用于创建带格式文本输入的自定义 TextEditingControllers,使用户能够以预定义格式输入电话号码、日期或 ID 等数据。它支持实时格式化和输入过程中的验证,通过在用户输入时确保结构正确来提升用户体验。该包轻量且可无缝集成到跨多个平台的表单和输入字段中。

适合场景

  • 带结构化数据的表单输入
  • 带格式的电话号码输入
  • 带掩码的日期和时间输入
  • 信用卡号码格式化
  • 基于用户输入的动态遮罩生成

主要特点

  • 实时输入掩码
  • 可自定义的遮罩模式
  • 自动光标定位
  • 支持动态遮罩
  • 内置验证逻辑

适合对象

  • 开发表单密集型应用的开发者
  • 需要严格输入格式的应用程序
  • 跨平台移动和桌面应用
  • 强调输入准确性的用户界面

使用建议

  • 可能需要仔细设计遮罩模式
  • 仅限文本输入场景
  • 嵌套或可变掩码可能带来的复杂性
  • 不适用于非文本输入类型
  • 需要手动处理掩码中的特殊字符

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

Extended Masked Text Logo

Extended Masked Text

This package is based on the source code of flutter_masked_text and is an attempt to fix some bugs and continue the development of the original one.

Usage

Import the library

import 'package:extended_masked_text/extended_masked_text.dart';

MaskedTextController

Create your mask controller:

final controller = MaskedTextController(mask: '000.000.000-00');

Set controller to your text field:

return MaterialApp(
    title: 'Masked Text Demo',
    theme: ThemeData(
        primarySwatch: Colors.blue,
    ),
    home: SafeArea(
        child: Scaffold(
            body: Column(
                children: <Widget>[
                    TextField(
                        // Add controller to TextField
                        controller: controller,
                    ),
                ],
            ),
        ),
    ),
);

MoneyMaskedTextController

Create your mask controller:

final controller = MoneyMaskedTextController(leftSymbol: 'R\$ ');

Set controller to your text field:

return MaterialApp(
    title: 'Money Masked Text Demo',
    theme: ThemeData(
        primarySwatch: Colors.blue,
    ),
    home: SafeArea(
        child: Scaffold(
            body: Column(
                children: <Widget>[
                    TextField(
                        // Add controller to TextField
                        controller: controller,
                    ),
                ],
            ),
        ),
    ),
);

所属分类

源码仓库

使用此插件的项目