How to disable onscreen keyboard on startup of view in Flutter?
I just figured out that this problem was caused by the setting autofocus: true
. So, removing this solves the issue.
Daniel B.
Updated on November 25, 2022Comments
-
Daniel B. over 1 year
I started out writing a Flutter app to remotely control some radio stream. I ran into a problem when adding a
TextFormField
to display the stream's current volume setting. (The reason why I opted for aTextFormField
instead of simplyText
is that I wanted to use the field for both showing the current setting and letting the user change the current value in one place.)The problem is the following: When I added the
TextFormField
(located inside the green bar in the screen shot below, after the textVol:
), I realized that whenever I started this view/page, the onboard keyboard always showed up by default when entering the page.Instead, I would like the keyboard to only show up when the user clicks inside the
TextFormField
.The code for the
TextFormField
looks as follows:TextFormField( onFieldSubmitted: (value){ print("The value entered is : $value"); }, // Define keyboard type keyboardType: TextInputType.number, // Make sure user doesn't enter letters or punctuation inputFormatters: <TextInputFormatter>[WhitelistingTextInputFormatter.digitsOnly], validator: (val){ return null; }, autofocus: true, controller: volTextEditingController, style: TextStyle( color: Colors.white, fontSize: 16, ), decoration: InputDecoration( border: InputBorder.none, ), maxLines: 1, )
So, I was wondering whether someone knows how to prevent the keyboard from appearing on startup of the shown view/page. Thanks in advance! The full code, if needed, is available on GitGub.