createTextFormField static method
TextFormField
createTextFormField({
- required Key? key,
- required TextEditingController controller,
- required FocusNode focusNode,
- required bool validateOnUserInteraction,
- String? validator()?,
- required List<
TextInputFormatter> inputFormatters, - required bool? multiline,
- required int? minLines,
- required int? maxLines,
- required int? maxLength,
- required MaxLengthEnforcement? maxLengthEnforcement,
- required bool enabled,
- required bool? readOnly,
- required bool selectable,
- required dynamic onChanged()?,
- required dynamic onFieldSubmitted()?,
- required dynamic onTapOutside()?,
- required TextStyle? textStyle,
- required List<
String> ? autofillHints, - required InputDecoration decoration,
- required TextInputAction? keyboardAction,
- required TextInputType? keyboardType,
- dynamic onTap()?,
- bool obscureText = false,
- bool enableSuggestions = true,
- bool autocorrect = true,
Create a common TextFormField with shared configuration
Implementation
static TextFormField createTextFormField({
required Key? key,
required TextEditingController controller,
required FocusNode focusNode,
required bool validateOnUserInteraction,
String? Function(String?)? validator,
required List<TextInputFormatter> inputFormatters,
required bool? multiline,
required int? minLines,
required int? maxLines,
required int? maxLength,
required MaxLengthEnforcement? maxLengthEnforcement,
required bool enabled,
required bool? readOnly,
required bool selectable,
required Function(String)? onChanged,
required Function(String)? onFieldSubmitted,
required Function(PointerDownEvent)? onTapOutside,
required TextStyle? textStyle,
required List<String>? autofillHints,
required InputDecoration decoration,
required TextInputAction? keyboardAction,
required TextInputType? keyboardType,
Function()? onTap,
bool obscureText = false,
bool enableSuggestions = true,
bool autocorrect = true,
}) {
return TextFormField(
key: key,
autofillHints: autofillHints,
autovalidateMode: validateOnUserInteraction
? AutovalidateMode.onUserInteraction
: AutovalidateMode.disabled,
validator: validator,
textInputAction: keyboardAction,
keyboardType: keyboardType,
inputFormatters: inputFormatters,
minLines: multiline == true || (maxLines != null && maxLines > 1)
? minLines
: null,
maxLines: multiline == true || (maxLines != null && maxLines > 1)
? maxLines
: 1,
maxLength: maxLength,
maxLengthEnforcement:
maxLengthEnforcement ?? MaxLengthEnforcement.enforced,
obscureText: obscureText,
enableSuggestions: enableSuggestions,
autocorrect: autocorrect,
controller: controller,
focusNode: focusNode,
enabled: enabled,
readOnly: readOnly == true,
enableInteractiveSelection: selectable,
onTap: onTap,
onTapOutside: onTapOutside,
onFieldSubmitted: onFieldSubmitted,
onChanged: onChanged,
style: textStyle,
decoration: decoration,
contextMenuBuilder: selectable
? (context, editableTextState) {
return AdaptiveTextSelectionToolbar.editableText(
editableTextState: editableTextState,
);
} : null,
);
}