Mar*_*nes 0 user-interface credit-card dart flutter
我们如何实现信用卡过期日期的文本字段格式化程序,例如 MM/YY
Lui*_*era 10
17 天后,但我可以实现这个:
class CardExpirationFormatter extends TextInputFormatter {
@override
TextEditingValue formatEditUpdate(
TextEditingValue oldValue, TextEditingValue newValue) {
final newValueString = newValue.text;
String valueToReturn = '';
for (int i = 0; i < newValueString.length; i++) {
if (newValueString[i] != '/') valueToReturn += newValueString[i];
var nonZeroIndex = i + 1;
final contains = valueToReturn.contains(RegExp(r'\/'));
if (nonZeroIndex % 2 == 0 &&
nonZeroIndex != newValueString.length &&
!(contains)) {
valueToReturn += '/';
}
}
return newValue.copyWith(
text: valueToReturn,
selection: TextSelection.fromPosition(
TextPosition(offset: valueToReturn.length),
),
);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3140 次 |
| 最近记录: |