搜索插件、代码仓与 APP 分类

插件详情v2.0.4

keyboard_service

键盘可见性/(自动)隐藏包,无需原生插件

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
1080
喜欢数
43
Pub 分数
160

安装插件

flutter pub add keyboard_service

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

一个 Flutter 包,可在多个平台上管理键盘的可见性及自动关闭,无需使用原生插件。它提供了一种简单、跨平台的解决方案,用于检测键盘是否打开或关闭,并允许开发者程序化地隐藏键盘。通过确保流畅的键盘交互,该包非常适合用于表单和输入密集型界面以提升用户体验。该包在 Android、iOS、Web、macOS、Windows 和 Linux 上均可无缝工作,是现代 Flutter 应用的多功能选择。

适合场景

  • 表单输入处理
  • 焦点更改时自动关闭键盘
  • 提升聊天应用的用户体验
  • 处理UI中的键盘重叠问题
  • 响应式布局调整
  • 动态表单字段管理

主要特点

  • 跨平台兼容性
  • 无需原生插件
  • 键盘状态检测
  • 程序化键盘隐藏
  • 轻量且易于集成
  • 支持所有主要的桌面和移动平台

适合对象

  • 开发跨平台应用的开发者
  • 包含复杂输入表单的应用程序
  • 聊天或消息界面
  • 需要响应式键盘处理的 UI
  • 团队避免平台特定代码

使用建议

  • 可能不支持网页上的所有边缘情况
  • 键盘行为的自定义功能有限
  • 依赖于 Flutter 的内置键盘 API
  • 不适合高级键盘自定义
  • 在嵌套滚动视图中需要谨慎处理

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

keyboard_service

Keyboard visibility / (auto-) dismiss package without the need of native plugin

Watch on GitHub Star on GitHub pub package

Getting Started

Use it for example when you want to automatically dimiss the on-screen keyboard when tapped outside of textfield. And if you want know if the on-screen keyboard is visible and/or want to explicitly dismiss it.

There are 2 classes

  • 'KeyboardService': Check if keyboard is visible and dismiss keyboard.
  • 'KeyboardAutoDismiss': A widget that wraps a Scaffold widget for automatically dismissing the keyboard.

Also see example project

Wrap your top scaffold:

return KeyboardAutoDismiss(
        scaffold: Scaffold(
            appBar: AppBar(
                title: Text('Keyboard Service Example'),
            ),
      ...
        ),
    );

Use the service class if needed:

// Use method below to dismiss the keyboard
KeyboardService.dismiss();

// Use the optional BuildContext parameter to remove focus of a TextField
KeyboardService.dismiss(unfocus: context);

// Check if the keyboard is visible
KeyboardService.isVisible(context);

License

This project is licensed under the MIT License - see the license file for details.

所属分类

源码仓库

使用此插件的项目

暂无相关数据。