拼写检查工具是android,拼写检查工具框架  |  Android 开发者  |  Android Developers...

Android 平台提供了拼写检查工具框架,可让您在应用中实现和使用拼写检查功能。该框架是 Android 平台提供的文本服务 API 之一。

如需在您的应用中使用该框架,您需要创建一个特殊类型的 Android 服务,该服务可生成拼写检查工具会话对象。根据您提供的文本,该会话对象会返回拼写检查工具生成的拼写建议。

拼写检查工具生命周期

下图显示了拼写检查工具服务的生命周期:

aef8e80834e85bd45e76d2bab4ce6c4f.png

图 1. 拼写检查工具服务的生命周期。

如需启动拼写检查,您的应用会开始实现拼写检查工具服务。您应用中的客户端(例如,Activity 或各个界面元素)会从该服务请求拼写检查工具会话,然后使用该会话获取文本建议。当客户端终止其操作时,它会关闭其拼写检查工具会话。如有必要,您的应用可随时关闭拼写检查工具服务。

实现拼写检查工具服务

如需在您的应用中使用拼写检查工具框架,请添加包含会话对象定义的拼写检查工具服务组件。您还可以向应用添加可控制设置的可选 Activity。此外,您还必须添加描述拼写检查工具服务的 XML 元数据文件,并向清单文件添加适当的元素。

拼写检查工具类

使用以下类定义服务和会话对象:

注意:您必须以异步和线程安全的方式实现拼写检查的所有方面。拼写检查工具可以由在不同核心上运行的不同线程同时调用。

拼写检查工具清单和元数据

除了代码之外,您还需要为拼写检查工具提供适当的清单文件和元数据文件。

相应的清单文件定义了用于控制设置的应用、服务和 Activity,如以下代码段所示:

package="com.example.android.samplespellcheckerservice" >

android:label="@string/app_name" >

android:label="@string/app_name"

android:name=".SampleSpellCheckerService"

android:permission="android.permission.BIND_TEXT_SERVICE" >

android:name="android.view.textservice.scs"

android:resource="@xml/spellchecker" />

android:label="@string/sample_settings"

android:name="SpellCheckerSettingsActivity" >

请注意,想要使用该服务的组件必须请求 spellchecker.xml 元数据文件,这将在下一部分中介绍。

相应的元数据文件 spellchecker.xml 包含以下 XML:

android:label="@string/spellchecker_name"

android:settingsActivity="com.example.SpellCheckerSettingsActivity">

android:label="@string/subtype_generic"

android:subtypeLocale="en”

/>

android:label="@string/subtype_generic"

android:subtypeLocale="fr”

/>

上述元数据指定了拼写检查工具用于控制设置的 Activity。它还定义了拼写检查工具的子类型;在本示例中,相应的子类型定义了拼写检查工具可以处理的语言区域。

从客户端访问拼写检查工具服务

使用

c13614e712328298000c6be752e8ad28.png

afd40f6c07b9a6e3fa7631f4674114fe.png

图 2. TextView 中的拼写检查。

不过,在其他情况下,不妨直接与拼写检查工具服务进行互动。下图显示了与拼写检查工具服务互动的控制流程:

d415ed2b586cb2f3693100f331cf5a4e.png

图 3. 与拼写检查工具服务互动。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值