项目作者: vonqo

项目描述 :
Flutter Plugin - Simple character blocked input that usually used for redeem/validation input.
高级语言: Dart
项目地址: git://github.com/vonqo/block_input.git
创建时间: 2020-08-25T02:41:59Z
项目社区:https://github.com/vonqo/block_input

开源协议:Apache License 2.0

下载


Block Input

build
pub package

Simple character blocked input that usually used for redeem code or validation code input.

Example

Full example

  1. import 'package:block_input/block_input.dart';
  1. BlockInput(
  2. controller: blockInputController,
  3. keyboardType: BlockInputKeyboardType.number, // Number or Text
  4. axisAlignment: MainAxisAlignment.spaceBetween, // Same as Row/Column MainAxisAlignment
  5. blockInputStyle: BlockInputStyle(
  6. backgroundColor: Colors.black12, // Color
  7. border: OutlineInputBorder( // Same as InputDecoration border
  8. borderRadius: BorderRadius.all(Radius.circular(10)),
  9. borderSide: BorderSide(color: Colors.deepOrange, width: 1)
  10. ),
  11. focusedBorder: OutlineInputBorder( // Same as InputDecoration border
  12. borderRadius: BorderRadius.all(Radius.circular(10)),
  13. borderSide: BorderSide(color: Colors.blueAccent, width: 2)
  14. )
  15. )
  16. )

Cyrillic support

Mongolian cyrillic input is loosely supported for now. This feature will help you to build Mongolian Registration No input. Cyrillic input triggers custom keyboard layout. Usage:

  1. BlockInput(
  2. keyboardType: BlockInputKeyboardType.mnCyrillic
  3. ...
  4. )

Cyrillic keyboard styling:

  1. BlockInputStyle(
  2. keyboardStyle: BlockKeyboardStyle(
  3. keyColor: Colors.blueAccent,
  4. backgroundColor: Colors.white,
  5. width: 40,
  6. height: 40,
  7. textStyle: TextStyle(),
  8. keyShape: RoundedRectangleBorder(
  9. borderRadius: BorderRadius.circular(18.0),
  10. side: BorderSide(color: Colors.red)
  11. ),
  12. ),
  13. ...
  14. ),

Controller and Listener

Controller is almost same as classic TextEditingController :D

  1. // Initializing controller
  2. int inputSize = 6; // input size is required for controller
  3. BlockInputController blockInputController = BlockInputController(inputSize);
  4. // Attaching listener
  5. blockInputController.addListener(() {
  6. print(blockInputController.text);
  7. });
  8. // Getting and Setting value
  9. String getValue = blockInputController.text; // get
  10. blockInputController.text = 'maaraa'; // set +
  11. // + throws exception when text length was exceeded from input size
  12. blockInputController.clear(); // clear
  13. // Disposing
  14. blockInputController.dispose();

Attributes

BlockInput

Attribute Type
blockInputKeyboardType BlockInputController
blockInputKeyboardType BlockInputKeyboardType
blockInputStyle BlockInputStyle
errorMessage String
errorMessageStyle TextStyle
axisAlignment MainAxisAlignment

BlockInputStyle

Attribute Type
backgroundColor Color
border OutlineInputBorder
focusedBorder OutlineInputBorder
padding EdgeInsets
width double
textStyle TextStyle
keyboardStyle BlockKeyboardStyle

Licence

Apache License version 2.0

Enkh-Amar.G // vonqo