अधिकांश ऐप में forms (login, signup, data entry) होते हैं जिनमें user input handling और validation की आवश्यकता होती है। Flutter forms को build और validate करने के लिए Form, TextFormField, validators, और controllers प्रदान करता है — user input वाले किसी भी ऐप के लिए आवश्यक।
Form and TextFormField
final _formKey = GlobalKey<FormState>(); // a key to access the form's state
Form(
key: _formKey,
child: Column(children: [
TextFormField(
decoration: InputDecoration(labelText: 'Email'),
validator: (value) { // VALIDATION logic
if (value == null || value.isEmpty) return 'Email required';
if (!value.contains('@')) return 'Invalid email';
return null; // null = valid
},
),
ElevatedButton(
onPressed: () {
if (_formKey.currentState!.validate()) { // run all validators
// all fields valid → submit
}
},
child: Text('Submit'),
),
]),
)
