Files
Vocasia-LMS-Mobile-apps--TA…/lib/screens/checkout/components/cardmonth.dart

30 lines
815 B
Dart

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
class CardMonthInputFormatter extends TextInputFormatter {
@override
TextEditingValue formatEditUpdate(
TextEditingValue oldValue, TextEditingValue newValue) {
var masaController = newValue.text;
if (newValue.selection.baseOffset == 0) {
return newValue;
}
var buffer = new StringBuffer();
for (int i = 0; i < masaController.length; i++) {
buffer.write(masaController[i]);
var nonZeroIndex = i + 1;
if (nonZeroIndex % 2 == 0 && nonZeroIndex != masaController.length) {
buffer.write('/');
}
}
var string = buffer.toString();
return newValue.copyWith(
text: string,
selection: new TextSelection.collapsed(offset: string.length));
}
}