yav*_*avg 0 flutter flutter-layout
我不知道这是否是正常的颤动行为,但是只有当您点击键盘“确定”按钮失去焦点时才会失去焦点,这很烦人。如果不这样做,光标将在文本字段中保持活动状态。
避免这种情况的最佳做法是什么?(在 gif 中它不是很受欢迎,但失去焦点的唯一方法是点击键盘上的“确定”按钮,否则无论您是否点击屏幕的其他区域,光标都将始终处于活动状态)
Widget _searchBar() {
return Container(
child: TextField(
textAlignVertical: TextAlignVertical.center,
style: TextStyle(
textBaseline: TextBaseline.alphabetic,
color: _styles["gris_oscuro1"]["color"],
),
onChanged: (value) {},
decoration: InputDecoration(
filled: true,
fillColor: _styles["gris_claro"]["color"],
alignLabelWithHint: true,
hintText: "Buscar por código",
hintStyle: TextStyle(color: _styles["gris_oscuro2"]["color"]),
prefixIcon:
Icon(Icons.search, color: _styles["gris_oscuro2"]["color"]),
enabledBorder: OutlineInputBorder(
borderRadius: BorderRadius.all(Radius.circular(40)),
borderSide:
BorderSide(color: _styles["gris_claro"]["color"], width: 1.0),
),
),
),
);
);
Scaffold(
key: _scaffoldKey,
backgroundColor: _styles["fondo"]["bg"],
drawer: MenuWidget(),
body: SafeArea(
child: _searchBar(),
)
Run Code Online (Sandbox Code Playgroud)
小智 9
onTapOutside: ((event) {
FocusScope.of(context).unfocus();
}),
Run Code Online (Sandbox Code Playgroud)
将其添加到文本字段。
将您的整个页面包裹GestureDetector起来onTap并按如下方式修改其功能:
@override
Widget build(BuildContext context) {
return GestureDetector(
onTap: () { //here
FocusScope.of(context).unfocus();
new TextEditingController().clear();
},
child: Container(
...
);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1537 次 |
| 最近记录: |