我正在实现一个表格,在这个表格中,用户可以写下一个课程的标题和描述,此外,用户应该能够为这个特定的课程选择颜色。此外,用户应该能够为这个特定的课程选择一种颜色。
我的目标是当我点击其他地方或点击键盘上的后退按钮时,从当前编辑的Textfield上取消焦点。
我发现了一个类似的帖子 如何解除屏幕上的键盘? 他们在哪里使用 FocusScope.of(context).unfocus();
中。
不幸的是,这在我的情况下是行不通的。
P.S.我使用的是Flutter 1.17.2。
child: GestureDetector(
behavior: HitTestBehavior.translucent,
onTap: () {
FocusScope.of(context).unfocus();
},
child: Form(
key: _formKey,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
_CourseTitelField(isEditing: isEditing),
_CourseDescriptionField(isEditing: isEditing),
_CourseColorSelection(
mainColor: _mainColor, tempMainColor: _tempMainColor),
],
),
),
),
你有很多选择,我会提到我喜欢的2个选项
import 'package:flutter/services.dart';
SystemChannels.textInput.invokeMethod('TextInput.hide');
FocusScope.of(context).requestFocus(FocusNode());