Labs ICT
Pro Login

Text Fields and Forms

Getting input from users.

Text Fields and Forms

TextField captures user input. TextFormField adds validation. Form groups text fields for validation. TextEditingController lets you control the text programmatically. InputDecoration customizes the field's appearance.

TextEditingController _controller = TextEditingController();

Form(
  child: Column(
    children: [
      TextFormField(
        controller: _controller,
        decoration: InputDecoration(
          labelText: 'Email',
          hintText: 'Enter your email',
        ),
        validator: (value) {
          if (value == null || value.isEmpty) {
            return 'Please enter email';
          }
          return null;
        },
      ),
      ElevatedButton(
        onPressed: () {
          print(_controller.text);
        },
        child: Text('Submit'),
      ),
    ],
  ),
)
Try it Yourself ->