Block Input

build pub package

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

Example

Full example

import 'package:block_input/block_input.dart';
BlockInput(
  blockInputController: blockInputController,
  blockInputKeyboardType: BlockInputKeyboardType.number, // Number or Text
  axisAlignment: MainAxisAlignment.spaceBetween, // Same as Row/Column MainAxisAlignment
  blockInputStyle: BlockInputStyle(
    backgroundColor: Colors.black12, // Color
    border: OutlineInputBorder( // Same as InputDecoration border
         borderRadius: BorderRadius.all(Radius.circular(10)),
         borderSide: BorderSide(color: Colors.deepOrange, width: 1)
    ),
    focusedBorder: OutlineInputBorder( // Same as InputDecoration border
         borderRadius: BorderRadius.all(Radius.circular(10)),
         borderSide: BorderSide(color: Colors.blueAccent, width: 2)
    )
  )
)

Controller and Listener

Controller is almost same as classic TextEditingController :D

// Initializing controller
int inputSize = 6; // input size is required for controller
BlockInputController blockInputController = BlockInputController(inputSize);

// Attaching listener
blockInputController.addListener(() {
  print(blockInputController.text);
});

// Getting and Setting value
String getValue = blockInputController.text; // get
blockInputController.text = 'maaraa'; // set + 
// + throws exception when text length was exceeded from input size

blockInputController.clear(); // clear

// Disposing
blockInputController.dispose();

Attributes

BlockInput

AttributeType
blockInputKeyboardTypeBlockInputController
blockInputKeyboardTypeBlockInputKeyboardType
blockInputStyleBlockInputStyle
errorMessageString
errorMessageStyleTextStyle
axisAlignmentMainAxisAlignment

BlockInputStyle

AttributeType
backgroundColorColor
borderOutlineInputBorder
focusedBorderOutlineInputBorder
paddingEdgeInsets
widthdouble
textStyleTextStyle

Licence

Apache License version 2.0

Enkh-Amar.G // vonqo

Libraries

block_input
block_input_controller
block_input_keyboard_type
block_input_style
character_input