Flutter 当我在TextFormField内点击Sufficion时,防止TextFormField聚焦
当我按下按钮时,TextFormField将聚焦,键盘将出现。如何解决此问题?Flutter 当我在TextFormField内点击Sufficion时,防止TextFormField聚焦,flutter,Flutter,当我按下按钮时,TextFormField将聚焦,键盘将出现。如何解决此问题? 代码如下: TextFormField( controller: code, focusNode: codeFocus, decoration: InputDecoration( labelText: 'verify code', prefixIcon: Icon(Ico
代码如下:
TextFormField(
controller: code,
focusNode: codeFocus,
decoration: InputDecoration(
labelText: 'verify code',
prefixIcon: Icon(Icons.sms),
suffixIcon: FlatButton(
onPressed:(){}
child: Text('send sms'),
textTheme: ButtonTextTheme.primary,
),
),
keyboardType: TextInputType.number,
),
focusNode: codeFocus,
)
您可以像这样使用堆栈
Stack(
alignment: Alignment.centerRight,
children: <Widget>[
TextFormField(
decoration: InputDecoration(
labelText: 'verify code',
prefixIcon: Icon(Icons.sms),
),
keyboardType: TextInputType.number,
),
FlatButton(
onPressed: () {},
textTheme: ButtonTextTheme.primary,
child: Text('send sms'),
),
],
)
堆栈(
对齐:alignment.centerRight,
儿童:[
TextFormField(
装饰:输入装饰(
labelText:“验证代码”,
前缀:图标(Icons.sms),
),
键盘类型:TextInputType.number,
),
扁平按钮(
按下:(){},
textTheme:buttonexttheme.primary,
子项:文本(“发送短信”),
),
],
)
顺便说一下…当你点击你的手机时,使用这个功能。
例子
() {
// This will help to wait for TextField to get focus before
// we unfocus but it will happen fast so that you won't notice.
Future.delayed(Duration.zero, () {
_yourInputFocusNode.unfocus();
// Your implementation to run when tap suffixIcon in TextField
});
},
TextFormField(
focusNode: _phoneNumberFocusNode,
decoration: InputDecoration(
suffixIcon: IconButton(
icon: Icon(Icons.contacts),
onPressed: () {
Future.delayed(Duration.zero, () {
_phoneNumberTwoFocusNode.unfocus();
Navigator.pushNamed(context, 'Contacts');
});
},
),
),
),