vercoder_inputer 0.8.1

vercoder_inputer

Enter the verification code received by the phone or other device.
一个基于flutter的验证码输入框控件.

Demo #

控制用户精准输入长度.

Features #

  • [x] 可以自定义验证码长度
  • [x] 当全部输入完成后,会自动调用协议方法,通过代理返回验证码及上下文context
  • [x] 可以通过verCode属性获取输入的验证码
  • [x] 用户自定义控件的尺寸

Version #

nameVercodeEditText
latest0.8.1

Usage #

1.第一步,在你的pubspec.yml声明

   dependencies:
     vercoder_inputer: ^0.8.0

2.添加引用

import 'package:vercoder_inputer/vercoder_inputer.dart';
...

3.在需要使用的页面创建控件,并声明遵守协议方法

class _MyHomePageState extends State < MyHomePage > implements InputerProtocol{

    //实现协议方法
    void didFinishedInputer(WGQVerCodeInputer inputer,BuildContext ctx,String verCode){
        print("verCode is $verCode");
        
        //判断验证码是否正确
        bool correct = false;//(此处修改成你自己的判断逻辑)
        if (!correct) {
        	inputer.reset();
        }
    }
 
 
 
    @override
    Widget build(BuildContext context) {
        //自定义外观样式(可选)
       Options opt = Options();
       opt.fontSize = 22.0;
       opt.fontColor = Colors.indigo;
       opt.fontWeight = FontWeight.w700;
       opt.emptyUnderLineColor = Colors.green;
       opt.inputedUnderLineColor = Colors.pink;
       opt.focusedColor = Colors.orange;
        //创建控件,并指明代理对象(delegate)
        WGQVerCodeInputer verCodeInputer = WGQVerCodeInputer(codeLength: 6, size: Size(375.0, 48.0), options:opt,delegate:this, );
        return new Scaffold(
            appBar: new AppBar(
                title: new Text(widget.title),
            ),
            body: Padding(
                padding: EdgeInsets.only(top: 100.0),
                child: verCodeInputer,
            )
        );
    }
}

Contact me #

0.8.1 #

  • 键盘被收起后,点击输入框重新设置焦点弹出键盘

0.8.0 #

  • 修正删除字符要先清除当前字符再往前移的问题.现在点击删除直接焦点退回前一个输入框
  • 增加reset()方法,如果用户发现验证码不正确可以调用该方法清除所有已输入的字符.(参考美团验证码输入模式)

0.7.0 #

  • 修复删除字符重新输入时,输入的位置与预期的位置不一致的问题
  • Options类增加一个焦点颜色(focusedColor)的属性,可以控制当前获取焦点(正在操作)的文本框下划线的颜色.

0.6.1 #

  • 修复readme文件格式错误

0.6.0 #

  • 增加自定义样式的功能,通过实例化Options类来实现.

0.0.1 #

  • 提交

example/README.md

example #

A new Flutter project.

Getting Started #

For help getting started with Flutter, view our online documentation.

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  vercoder_inputer: ^0.8.1

2. Install it

You can install packages from the command line:

with Flutter:


$ flutter pub get

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:vercoder_inputer/vercoder_inputer.dart';
  
Popularity:
Describes how popular the package is relative to other packages. [more]
72
Health:
Code health derived from static analysis. [more]
99
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
100
Overall:
Weighted score of the above. [more]
86
Learn more about scoring.

We analyzed this package on Jul 17, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.4.0
  • pana: 0.12.19
  • Flutter: 1.7.8+hotfix.3

Platforms

Detected platforms: Flutter

References Flutter, and has no conflicting libraries.

Health issues and suggestions

Document public APIs. (-0.21 points)

36 out of 37 API elements have no dartdoc comment.Providing good documentation for libraries, classes, functions, and other API elements improves code readability and helps developers find and use your API.

Fix lib/src/WGQVerCodeInputer.dart. (-0.50 points)

Analysis of lib/src/WGQVerCodeInputer.dart reported 1 hint:

line 10 col 7: This class (or a class which this class inherits from) is marked as '@immutable', but one or more of its instance fields are not final: WGQVerCodeInputer.codeLength, WGQVerCodeInputer.gap, WGQVerCodeInputer.delegate, WGQVerCodeInputer.myState, WGQVerCodeInputer.options

Fix lib/vercoder_inputer.dart. (-0.50 points)

Analysis of lib/vercoder_inputer.dart reported 1 hint:

line 2 col 9: Name libraries using lowercase_with_underscores.

Format lib/src/Options.dart.

Run flutter format to format lib/src/Options.dart.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.23.0 <3.0.0
flutter 0.0.0
Transitive dependencies
collection 1.14.11
meta 1.1.6 1.1.7
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8
Dev dependencies
flutter_test

Admin