我正在开发一个 Flutter 应用程序,我正在尝试全局自定义键盘的“发送”或默认按钮的行为,而不管当前的输入字段或屏幕如何。我想更改用户按下键盘上的“发送”按钮时发生的默认操作。
Flutter 有没有办法实现这一点?我已经探索了
TextField
和 TextFormField
小部件,但似乎该行为与每个单独的输入字段相关。我想覆盖或自定义整个应用程序中“发送”按钮的默认操作。
任何有关如何实现这一目标的指导或示例代码将不胜感激。我正在寻找一种解决方案,允许我在全局范围内处理“发送”按钮的按下,而不必为每个输入字段单独处理。
如果您从
TextField
的源代码中看到,在 textInputAction
方法内传递给 EditableText
构造函数的 build
属性仅取自 widget 参数。
lib/src/material/text_field.dart#L1464
textInputAction: widget.textInputAction,
这意味着无法通过全局设置某种选项来控制该行为。实现此目的的唯一方法是创建一个扩展
TextField
的新自定义小部件,但当然,您仍然需要手动将每个 TextField
小部件更改为该自定义小部件。