xxxxxxxxxx
// full text field
TextField(
cursorHeight: 20,
autofocus: false,
controller: TextEditingController(text: "Initial Text here"),
decoration: InputDecoration(
labelText: 'Enter your username',
hintText: "Enter your Name",
prefixIcon: Icon(Icons.star),
suffixIcon: Icon(Icons.keyboard_arrow_down),
contentPadding: const EdgeInsets.symmetric(vertical: 10,horizontal: 10),
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(30),
borderSide: BorderSide(color: Colors.grey, width: 2),
),
enabledBorder: OutlineInputBorder(
borderRadius: BorderRadius.circular(30),
borderSide: BorderSide(color: Colors.grey, width: 1.5),
),
focusedBorder: OutlineInputBorder(
gapPadding: 0.0,
borderRadius: BorderRadius.circular(30),
borderSide: BorderSide(color: Colors.red, width: 1.5),
),
),
)
xxxxxxxxxx
TextFormField(
decoration: const InputDecoration(
border: UnderlineInputBorder(),
labelText: 'Enter your username',
),
),
xxxxxxxxxx
TextField (
decoration: InputDecoration(
border: InputBorder.none,
labelText: 'Enter Name',
hintText: 'Enter Your Name'
),
);
xxxxxxxxxx
import 'package:flutter/material.dart';
class MyTextForm extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Text Input Example'),
),
body: Padding(
padding: EdgeInsets.all(16.0),
child: TextField(
decoration: InputDecoration(
labelText: 'Enter text',
border: OutlineInputBorder(),
),
),
),
);
}
}
void main() {
runApp(MaterialApp(
home: MyTextForm(),
));
}
xxxxxxxxxx
TextFormField(
decoration: const InputDecoration(
border: UnderlineInputBorder(),
labelText: 'Enter your username'
),
);
xxxxxxxxxx
TextField(
cursorColor: Colors.grey,
style: TextStyle(fontSize: 16, fontFamily: "SF Pro Display"),
decoration: InputDecoration(
filled: true,
focusedBorder: OutlineInputBorder(
borderRadius: BorderRadius.all(Radius.circular(10)),
borderSide: BorderSide(
width: 0.2,
color: Colors.grey,
),
),
focusColor: Colors.grey,
hintText: "Input card holder name",
fillColor: Colors.white,
enabledBorder: OutlineInputBorder(
borderRadius: BorderRadius.all(Radius.circular(10)),
borderSide: BorderSide(
width: 0.2,
color: Colors.grey,
),
),
),
),
xxxxxxxxxx
TextFormField(
minLines: 6, // any number you need (It works as the rows for the textarea)
keyboardType: TextInputType.multiline,
maxLines: null,
)
xxxxxxxxxx
Container(
height: 50,
// margin: EdgeInsets.only(top: 20),
decoration: BoxDecoration(
color: Colors.tealAccent,
borderRadius: BorderRadius.circular(32)),
child: TextFormField(
cursorColor: Colors.black,
// keyboardType: TextInputType.,
decoration: InputDecoration(
hintStyle: TextStyle(fontSize: 17),
hintText: 'Search your trips',
suffixIcon: Icon(Icons.search),
border: InputBorder.none,
contentPadding: EdgeInsets.all(18),
),
),
),
xxxxxxxxxx
import 'package:flutter/material.dart';
class MyFormPage extends StatefulWidget {
@override
_MyFormPageState createState() => _MyFormPageState();
}
class _MyFormPageState extends State<MyFormPage> {
final _formKey = GlobalKey<FormState>();
String _name = '';
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('TextFormField Example'),
),
body: Form(
key: _formKey,
child: Padding(
padding: EdgeInsets.all(16.0),
child: Column(
children: [
TextFormField(
decoration: InputDecoration(
labelText: 'Name',
hintText: 'Enter your name',
),
validator: (value) {
if (value.isEmpty) {
return 'Please enter your name';
}
return null;
},
onSaved: (value) {
setState(() {
_name = value;
});
},
),
SizedBox(height: 16.0),
RaisedButton(
child: Text('Submit'),
onPressed: () {
if (_formKey.currentState.validate()) {
_formKey.currentState.save();
print('Name: $_name');
}
},
),
],
),
),
),
);
}
}
xxxxxxxxxx
String? get _errorText {
// at any time, we can get the text from _controller.value.text
final text = _controller.value.text;
// Note: you can do your own custom validation here
// Move this logic this outside the widget for more testable code
if (text.isEmpty) {
return 'Can\'t be empty';
}
if (text.length < 4) {
return 'Too short';
}
// return null if the text is valid
return null;
}
// then, in the build method:
TextField(
controller: _controller,
decoration: InputDecoration(
labelText: 'Enter your name',
// use the getter variable defined above
errorText: _errorText,
),
),