How to create number input field in Flutter? How to create number input field in Flutter? dart dart

How to create number input field in Flutter?


You can specify the number as keyboardType for the TextField using:

keyboardType: TextInputType.number

Check my main.dart file

import 'package:flutter/material.dart';import 'package:flutter/services.dart';void main() => runApp(new MyApp());class MyApp extends StatelessWidget {  @override  Widget build(BuildContext context) {    // TODO: implement build    return new MaterialApp(      home: new HomePage(),      theme: new ThemeData(primarySwatch: Colors.blue),    );  }}class HomePage extends StatefulWidget {  @override  State<StatefulWidget> createState() {    return new HomePageState();  }}class HomePageState extends State<HomePage> {  @override  Widget build(BuildContext context) {    return new Scaffold(      backgroundColor: Colors.white,      body: new Container(          padding: const EdgeInsets.all(40.0),          child: new Column(        mainAxisAlignment: MainAxisAlignment.center,        children: <Widget>[          new TextField(            decoration: new InputDecoration(labelText: "Enter your number"),            keyboardType: TextInputType.number,            inputFormatters: <TextInputFormatter>[    FilteringTextInputFormatter.digitsOnly], // Only numbers can be entered          ),        ],      )),    );  }}

enter image description here


For those who are looking for making TextField or TextFormField accept only numbers as input, try this code block :

for flutter 1.20 or newer versions

TextFormField(  controller: _controller,  keyboardType: TextInputType.number,  inputFormatters: <TextInputFormatter>[    FilteringTextInputFormatter.allow(RegExp(r'[0-9]')),  ],  decoration: InputDecoration(    labelText: "whatever you want",    hintText: "whatever you want",    icon: Icon(Icons.phone_iphone)  ))

for earlier versions of 1.20

TextFormField(    controller: _controller,    keyboardType: TextInputType.number,    inputFormatters: <TextInputFormatter>[        WhitelistingTextInputFormatter.digitsOnly    ],    decoration: InputDecoration(        labelText:"whatever you want",         hintText: "whatever you want",        icon: Icon(Icons.phone_iphone)    ))


Through this option you can strictly restricted another char with out number.

 inputFormatters: [WhitelistingTextInputFormatter.digitsOnly], keyboardType: TextInputType.number,

For using above option you have to import this

import 'package:flutter/services.dart';

using this kind of option user can not paste char in a textfield