xform 0.2.0 xform: ^0.2.0 copied to clipboard
A Flutter plugin for easy form building. Built in with textfield types, validation and pagination.
XForm #
Flutter forms with superpowers. #
Simplifies form creation and management. Simply create form fields and the xform will take care of the rest. Moving to the next field on enter, keyboard type based on field type, validation, multipage forms, etc.
Supported Fields #
- XTextField - Your usual text field
- XDateField - Text field with a date picker
- XSelectField - Dropdown selection box
- XCheckbox - Checkbox returning true or false values
- XCheckboxGroup - Grouped checkboxes returning an array of the selected values
- XRadioGroup - Grouped radio buttons
Quick Start #
- Add the XForm widget to a stateful widget
- Add XFields as children, each page wrapped in a ListView.
- Add a submit function to handle the data on submission.
Example #
import 'package:flutter/material.dart';
import 'package:xform/xform.dart';
void main() => runApp(MaterialApp(
home: Scaffold(
appBar: AppBar(title: const Text('XForm')), body: FormWidget()),
));
class FormWidget extends StatefulWidget {
@override
_FormWidgetState createState() => _FormWidgetState();
}
class _FormWidgetState extends State<FormWidget> {
_submit(formData) {
print(formData);
}
@override
Widget build(BuildContext context) {
return Padding(
padding: const EdgeInsets.all(8.0),
child: XForm(submit: _submit, children: <Widget>[
ListView(children: <Widget>[
XTextField(
name: "name",
label: "Name",
required: true,
),
XTextField(
name: "email",
label: "Email Address",
type: FieldType.email,
),
]),
]),
);
}
}