插入内容文本输入客户端
摘要
#向TextInputClient
接口添加了一个insertContent
方法,以允许Android的图像键盘功能将内容插入Flutter的TextField
中。
上下文
#从Android 7.1开始,IME(输入法编辑器或虚拟键盘)可以将图像和富文本内容发送到文本编辑器中。这允许用户将gif、贴纸或上下文相关的富文本内容插入文本字段中。
更改说明
#当用户在IME中插入富文本内容时,平台会发送TextInputClient.commitContent
通道消息,通知Dart代码IME插入了富文本内容。通道消息包含插入内容的MIME类型、URI和字节数据(以JSON格式)。
迁移指南
#如果您之前实现了TextInputClient
接口,请覆盖insertContent
以支持富文本内容插入或提供一个空实现。
要迁移,请实现insertContent
。
迁移前的代码
class MyCustomTextInputClient implements TextInputClient {
// ...
}
迁移后的代码
class MyCustomTextInputClient implements TextInputClient {
// ...
@override
void insertContent() {
// ...
}
// ...
}
您的TextInputClient
实现可能不需要接收从IME插入的富文本内容的功能。在这种情况下,您可以将insertContent
的实现留空,不会产生任何后果。
class MyCustomTextInputClient implements TextInputClient {
// ...
@override
void insertContent() {}
// ...
}
或者,您可以使用与默认TextInputClient
类似的实现。要了解如何执行此操作,请查看insertContent实现。
为了防止对接口造成破坏性更改,请使用with TextInputClient
而不是implements TextInputClient
。
时间线
#包含在版本中:3.8.0-1.0.pre
稳定版本:3.10.0
参考
#API 文档
相关问题
相关 PR
除非另有说明,否则本网站上的文档反映了 Flutter 的最新稳定版本。页面最后更新于 2024-04-04。 查看源代码 或 报告问题.