Android的文本和输入之创建输入法教程

2016-02-19 11:20 43 1 收藏

下面,图老师小编带您去了解一下Android的文本和输入之创建输入法教程,生活就是不断的发现新事物,get新技能~

【 tulaoshi.com - 编程语言 】

输入法编辑器(IME)是让用户输入文本的控件。Android提供了一个可扩展的的输入法的框架,它允许应用程序给用户提供另外的输入法,如软键盘或语音输入。这些输入法一旦安装,用户就可以从系统的设置中选择他们想要使用的IME,并且这个设置对整个系统都是有效的,每次只有一种输入法是可用的。

要在Android系统中添加一种输入法,你就要创建一个包含继承了InputMethodService类的类应用程序。另外,你通常还要创建一个“settings”Activity,把选项传递给IME服务。你还可以定义一个用于设置的UI,让它做为系统设置的一部分来显示。

本文包含以下内容

1. IME的生命周期。

2. 在应用程序的清单中声明IME组件;

3. IME API

4. 设计IME的UI

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

5. 从IME中把文本发送给应用程序

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

6. 使用IME子类型

IME的生命周期

下图介绍IME的生命周期:

图1.IME的生命周期

下列章节介绍如何实现UI以及代码如何跟这个生命周期相关联。

在清单中生命IME组件

在Android系统中,IME是一个包含了特殊IME服务的Android应用程序。应用程序的清单文件必须声明服务、申请必要的权限、提供跟action.view.InputMethod操作相匹配的Intent过滤器、以及定义IME的特性的元数据。另外,还要提供一个设置界面,允许用户用它来编辑IME的行为,你可以定义一个从系统设置中能够启动的“settings”的Activity。

以下清单片段声明了IME服务。它申请了允许把服务连接到系统的IME的BIND_INPUT_METHOD权限,建立了一个跟android.view.InputMethod操作相匹配的Intent过滤器,并且给IME定义了元数据:
代码如下:

!-- Declares the input method service --
service android:name="FastInputIME"
android:label="@string/fast_input_label"
android:permission="android.permission.BIND_INPUT_METHOD"
intent-filter
action android:name="android.view.InputMethod" /
/intent-filter
meta-data android:name="android.view.im" android:resource="@xml/method" /
/service

接下来给IME声明了用于设置的Activity。它有一个ACTION_MAIN类型的Intent过滤器,这指明了该Activity是IME应用程序的主入口:
代码如下:

!-- Optional: an activity for controlling the IME settings --
activity android:name="FastInputIMESettings"
android:label="@string/fast_input_settings"
intent-filter
action android:name="android.intent.action.MAIN"/
/intent-filter
/activity

你还可以在这个设置的UI中提供对IME设置的直接访问。

来源:https://www.tulaoshi.com/n/20160219/1597156.html

延伸阅读
标签: 电脑入门
Windows XP中,输入法图标也会莫名其妙地丢失,但在控制面板中却没有输入法,输入法无法转换,输入法图标不见了,主要是因为ctfmon.exe文件被病毒破坏了,这时可以按以下方法尝试: 输入法不能切换解决方法1: 在任务栏单击鼠标右键,弹出快捷菜单,把鼠标移动到工具栏上,会弹出子菜单,看看其中的语言栏有没有被选中,如果没有选中,单击选...
标签: 软件教程
刚刚使用必应输入法的可能对这款输入法还有很多不会使用的,比如输入法的字体大小怎么设置、皮肤怎么更换,如果你有些音不准备,还需要设置模糊音这样能方便你打字,那这些内容都在哪里设置呢?小编给大家分享下必应输入法怎么设置,主要跟大家分享必应输入法怎么设置字体、皮肤、模糊音等等。 如何设置候选词字...
ios8安装百度输入法和搜狗输入法哪个好?   ios8百度输入法和搜狗输入法哪个好?ios8升级后的第一件事是干嘛呢?当然是为自己的手机安装输入法啦~那么我们是选择百度输入法还是搜狗输入法呢?二者有什么不同呢?哪个更好用呢?下面就和图老师小编一起去了解下二者的区别对Tulaoshi.com比吧。 随着今日凌晨iOS 8正式版的推送,...
标签: 软件教程
搜狗输入法中有一个V模式不知道大家是否使用过。V模式是中文数字是一个功能组合,包括多种中文数字的功能。值得注意的是它只能在全拼的状态下使用下面小编就为大家介绍一下这个功能 1、首先我们将输入法设置到全拼的状态,搜狗拼音输入法==设置属性 2、点击常用===特殊习惯===全拼 使用方法很简单就是在...
iPhone6怎么换输入法?如何换输入法?   输入法切换说明 在ios设备上进行键盘输入时候可以点击那个地球来切换输入法。每按一次接切换到下一个输入法,依次切换你在系统设置里面开启的所有输入法。如果你有很多输入法的时候www.tulaoshi.com这样切换是否有点繁琐呢?下面给大家介绍两个快速切换点方法! 苹果6怎么切换输...

经验教程

424

收藏

29
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部