flutter - 在 Flutter 中点击单选按钮时隐藏键盘
问题描述
我试图找到一种在点击单选按钮时关闭键盘的方法。我找到了一些类似本教程( https://flutterigniter.com/dismiss-keyboard-form-lose-focus/ )的答案,但这只会在空白处单击文本字段外而不点击单选按钮时隐藏键盘。
如果您想尝试,这是一个简单的代码。任何想法将不胜感激。谢谢
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
/// This Widget is the main application widget.
class MyApp extends StatelessWidget {
static const String _title = 'Flutter Code Sample';
@override
Widget build(BuildContext context) {
return MaterialApp(
title: _title,
home: Scaffold(
appBar: AppBar(title: const Text(_title)),
body: Center(
child: MyStatefulWidget(),
),
),
);
}
}
enum SingingCharacter { lafayette, jefferson }
class MyStatefulWidget extends StatefulWidget {
MyStatefulWidget({Key key}) : super(key: key);
@override
_MyStatefulWidgetState createState() => _MyStatefulWidgetState();
}
class _MyStatefulWidgetState extends State<MyStatefulWidget> {
SingingCharacter _character = SingingCharacter.lafayette;
Widget build(BuildContext context) {
return Column(
children: <Widget>[
TextField(
autofocus: true,
),
ListTile(
title: const Text('Lafayette'),
leading: Radio(
value: SingingCharacter.lafayette,
groupValue: _character,
onChanged: (SingingCharacter value) {
setState(() {
_character = value;
});
},
),
),
ListTile(
title: const Text('Thomas Jefferson'),
leading: Radio(
value: SingingCharacter.jefferson,
groupValue: _character,
onChanged: (SingingCharacter value) {
setState(() {
_character = value;
});
},
),
),
],
);
}
}
解决方案
在 onChange 函数中写这行代码 FocusScope.of(context).unfocus();
推荐阅读
- javascript - 删除 Discord Bot [Discord JS] 发送的消息
- python - 正则表达式:在 python3 中的列表中搜索
- autosys - Autosys 作业在一段时间内不会触发两次
- django - 在云端部署 Django 应用程序,但甚至无法访问 ip_address:8000
- angular - 向 NgRx 商店添加元素后的 Angular scrollIntoView
- javascript - 检查 JavaScript 对象是否包含来自其他对象的值
- dart - 如何在 Dart 中将 Class 对象转换为数据结构“地图”或“地图列表”?
- ios - MPSCNNConvolution 在施工中崩溃
- c++ - 推回功能的容量问题
- user-interface - 是否可以在没有对象大小的情况下计算每度视角的点数?