http://www.pin5i.com/showtopic-android-frameworks-imf-1.html
Android Frameworks系列之IMF(一)
IMF(Input Method Frameworks)是Android输入法的Framework框架,其中最主要的是InputMethodService,他继承于AbstractInputMethodService。
它主要由以下几个组件构成,完成输入法的相关UI,和文字的输出。
1. Soft Input View
这是软键盘的Input Area,主要完成touch screen下和用户的交互输入。onCreateInputView() 被调用来进行soft inputview的实例化;onEvaluateInputViewShown()决定是否显示soft inputview;当状态改变的时候,调用updateInputViewShown() 来重新决策是否显示soft inputview。
2. Candidates View
Candidates View也是输入法中一个相当重要的组件。当用户输入字符的时候,显示相关的列表。停止输入的时候,有会自动消失。onCreateCandidatesView()来实例化自己的IME。和soft inputview不同的是Candidates View对整个UI布局不会产生影响。setCandidatesViewShown(boolean) 用来设置是否显示Candidates View。
3. 输出字符
字符的输出是InputMethodService最核心的功能,IME通过 InputConnection从IMF来获得字符输出。并且通过不同的editor类型来获取相应的支持。通过 onFinishInput() 和onStartInput(EditorInfo, boolean)方法来进行输入目标的切换。
另外,onInitializeInterface() 用于InputMethodService在执行的过程中配置的改变;
onBindInput()切换一个新的输入通道;
onStartInput(EditorInfo, boolean) 处理一个新的输入。
分享到:
相关推荐
Android IMF 输入法总结是 Android 1.5 新添加的一个重要功能,用来支持软键盘、各种的输入法。 IMF Input Method Framework 的主要组件包括 Input Method Manager (IMM)、Input Method (IME) 和 Client ...
### Android开发实例详解之IMF (Android_SDK_Sample—SoftKeyboard) #### 一、IMF简介 在深入了解SoftKeyboard项目之前,我们先简要介绍一下IMF(Input Method Framework)。随着Android SDK 1.5版本的发布,...
【标题】"Android-development-sample---IMF.rar"与"Android softKeyboard_androi"结合,意味着这是一个关于Android开发的示例项目,特别关注于实现输入法框架(Input Method Framework,简称IMF),并且涉及到软...
输入法框架(Input Method Framework,IMF)是Android系统中用于管理用户输入方式的核心组件,主要涉及输入法管理器、输入法(IME)以及客户端应用。这个框架允许开发者创建自定义的输入法,并与系统中的各种应用...
Android 平台输入法开发解析是 Android 平台的一个重要组件,自 Android 1.5 版本以来,Android 平台开放了输入法框架(Input Method Framework,IMF),使得 Android 平台的输入法开发变得更加灵活和可扩展。...
在Android开发中,输入法框架(Input Method Framework,IMF)是极其重要的一部分,特别是随着Android的成熟和发展,越来越多的硬件/软件设备和输入技术的出现,如实体键盘、虚拟键盘、语音识别、手写输入等。...
在Android开发中,输入法(Input Method Framework, IMF)是一个重要的组成部分,特别是在涉及到用户与设备交互,特别是文本输入时。本文将深入讲解Android开发实例,具体聚焦于IMFAndroidSDKSampleSoftKeyboard项目...
日文,中文,英文。 OpenWnn for Android is a IME(Input Method Editor) package which works on Android's IMF(Input Method Framework). This version contains Japanese, Chinese and English IME.
- **Android JNI特殊之处**:Android的JNI环境有一些特定的要求,比如需要遵守特定的目录结构。 - **打包安装**:完成开发后,需要将生成的`.so`文件放入`libs/armeabi`目录,并通过`System.load("xxx")`加载。 ###...
IMF即输入方法框架(Input Method Framework),它是Android系统中用于管理输入法的核心组件。了解其结构对于开发自定义输入法至关重要。IMF的架构涉及多个层次,包括但不限于`android.view.ViewRoot`和`...
Android系统提供了一个输入法框架(Input Method Framework,IMF),允许开发者创建自定义的输入法。这个框架包括输入法服务(InputMethodService)和输入法编辑器(InputMethodEditor)两部分,用于处理用户输入...
Android 输入法的实现原理主要基于Input Method Framework (IMF)框架,该框架将输入法的实现分为三个核心模块:客户端控件、输入法服务(IMMS)和输入法应用(IME)。理解这些模块及其交互对于在Android系统下开发...
6. **Input Method Framework (IMF)**:改进了输入法框架,支持更丰富的键盘布局和交互方式,为第三方输入法提供了更好的平台。 7. **多用户支持**:API Level 19首次引入了多用户支持,允许多个用户在同一设备上...
可能对研究输入法的朋友有些帮助: OpenWnn for Android is a IME(Input Method Editor) package ... works on Android's IMF(Input Method Framework). This version contains Japanese, Chinese and English IME.
Android是一种基于Linux的开源操作系统,其输入方法框架(Android Input Method Framework,IMF)由输入法管理器、输入法(IME)和客户端应用三部分构成,用于管理交互和文本生成。Android SDK是Android平台的软件...
自Android 1.5版本以来,谷歌引入了输入法框架(Input Method Framework,简称IMF),这是Android平台的一项特色设计,旨在支持没有物理键盘的设备进行文字输入。IMF的开放不仅推动了触屏设备的普及,还提供了高度的...
4. **输入法框架(Input Method Framework, IMF)**: Android的输入法框架负责管理所有输入法服务。PinyinIME源码会展示如何与IMF通信,例如如何响应系统的输入请求,以及如何通过InputConnection接口发送用户输入...
自从Android平台1.5版本之后,谷歌推出了Android平台的输入法框架(Input Method Framework, IMF),这是一项重要的技术革新,极大地推动了无物理键盘设备的发展,并且增强了软件的灵活性和可扩展性。 ##### 输入法...
至于Input Method Framework (IMF),它处理软硬件键盘的交互,确保输入法的正确工作。 这些知识点构成了Android应用开发的基础,对理解和实践Android编程至关重要。通过深入学习和实践,开发者能够构建功能丰富的、...