formatters.dart 713 B

12345678910111213141516171819
  1. import 'package:flutter/services.dart';
  2. class DecimalTextInputFormatter extends TextInputFormatter{
  3. @override
  4. TextEditingValue formatEditUpdate(TextEditingValue oldValue, TextEditingValue newValue) {
  5. final regExp = RegExp(r"^\d*\.?\d*");
  6. String newString = regExp.stringMatch(newValue.text) ?? "";
  7. return newString == newValue.text ? newValue : oldValue;
  8. }
  9. }
  10. class IntegerTextInputFormatter extends TextInputFormatter{
  11. @override
  12. TextEditingValue formatEditUpdate(TextEditingValue oldValue, TextEditingValue newValue) {
  13. final regExp = RegExp(r"^[0-9]*$");
  14. String newString = regExp.stringMatch(newValue.text) ?? "";
  15. return newString == newValue.text ? newValue : oldValue;
  16. }
  17. }