我想检测键盘是否可见。我可以实现在其他堆栈线程上建议的hacks:
bool keyboardvisible = MediaQuery.of(context(.viewInsets.bottom> 0;
这适用于 Android,但在 iOS 上,无论键盘是否可见,这个底部属性似乎总是返回 0。
有没有更好的方法来检测在两个平台上实际有效的键盘可见性?
谢谢John
这个插件会帮助你。它为 iOS 和 Android 的可见性更改提供了一个侦听器。
示例代码:
import 'package:keyboard_visibility/keyboard_visibility.dart';
@protected
void initState() {
super.initState();
KeyboardVisibilityNotification().addNewListener(
onChange: (bool visible) {
print(visible);
},
);
}