flutter 当我单击文本字段时,键盘将关闭

hec6srdp  于 2023-05-19  发布在  Flutter
关注(0)|答案(1)|浏览(173)

当我点击文本字段时,键盘在Android设备上关闭,但iOS端运行良好。

我希望键盘在我点击文本字段时打开,在我点击任何地方时关闭。

gcuhipw9

gcuhipw91#

使用此小部件 Package 应用程序

class CloseKeyboardWidget extends StatelessWidget {
  final Widget child;
  const CloseKeyboardWidget({Key? key, required this.child}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return GestureDetector(
      onTap: () {
        FocusScopeNode currentFocus = FocusScope.of(context);

        if (!currentFocus.hasPrimaryFocus && currentFocus.focusedChild != null) {
          FocusManager.instance.primaryFocus!.unfocus();
        }
      },
      child: child,
    );
  }
}

示例

MaterialApp(
        builder: (context, child) {
        return Scaffold(
          body: CloseKeyboardWidget(
            child: child ?? const SizedBox(),
          ),
        );
      },
      home: Scaffold(),
    );

相关问题