解决方法
您可以通过使用
viewInsets
检查键盘可见性并基于它隐藏fab来实现它.
例:
import 'package:Flutter/material.dart'; void main() { runApp(new MaterialApp( title: "Example",home: new FabHideOnKeyboard(),)); } class FabHideOnKeyboard extends StatefulWidget { @override _FabHideOnKeyboardState createState() => new _FabHideOnKeyboardState(); } class _FabHideOnKeyboardState extends State<FabHideOnKeyboard> { @override Widget build(BuildContext context) { final bool showFab = MediaQuery.of(context).viewInsets.bottom==0.0; return Scaffold( resizetoAvoidBottomPadding: true,body:Container( alignment: Alignment.center,child: Column( mainAxisAlignment: MainAxisAlignment.center,children: <Widget>[ Text("TextField:"),TextField() ],),floatingActionButton: showFab?Icon(Icons.add):null,); } }
希望有所帮助!