點擊空白處 收回鍵盤
Scaffold(
body: GestureDetector(
behavior: HitTestBehavior.translucent,
onTap: () {
// 觸摸收起鍵盤(方式一)
FocusScopeNode currentFocus = FocusScope.of(context);
if (!currentFocus.hasPrimaryFocus &&
currentFocus.focusedChild != null) {
FocusManager.instance.primaryFocus?.unfocus();
}
// 觸摸收起鍵盤(方式二)
// FocusScope.of(context).requestFocus(FocusNode());
},
),
);
返回上一頁 收回鍵盤
// 當State對象從樹中被永久移除時調用, 相當于iOS中的 viewDidDisAppear
@override
void dispose() {
closeKeyBoard();
super.dispose();
}
// 收回鍵盤
void closeKeyBoard() {
// 觸摸收起鍵盤(方式一)
FocusScopeNode currentFocus = FocusScope.of(context);
if (!currentFocus.hasPrimaryFocus &¤tFocus.focusedChild != null) {
FocusManager.instance.primaryFocus?.unfocus();
}
// 觸摸收起鍵盤(方式二)
// FocusScope.of(context).requestFocus(FocusNode());
}