`
jianweicao
  • 浏览: 119698 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android下响应输入法搜索按钮

 
阅读更多

 

转载自:http://article.fynas.com/android%E4%B8%8B%E6%90%9C%E7%8B%97%E8%BE%93%E5%85%A5%E6%B3%95%E6%90%9C%E7%B4%A2%E6%8C%89%E9%92%AE%E6%97%A0%E6%95%88

 

 

在很多android应用中都有搜索框,当它获得焦点后,输入法会自动弹出,在输入关键词后可以点击应用给设计的搜索按钮,也可以点击输入法中的“搜索”键(一般在输入法的右下角)进行搜索,这样用户使用起来会更加的方便。实现这个功能其实很简单,只需要捕获用户的输入就行了,一般代码如下:

 

searchAutoCompleteText.setOnEditorActionListener(new OnEditorActionListener() {

	@Override
	public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
                // 输入法中点击搜索
		if (actionId == EditorInfo.IME_ACTION_SEARCH) {
                        //这里调用搜索方法
			return true;
		}
		return false;
	}
});

 

但是这对于国内高市占率的搜狗输入法却无效。调试一下很容易发现对于搜狗输入法,点击“搜索”时actionId为0,对应EditorInfo.IME_ACTION_UNSPECIFIED,而不是EditorInfo.IME_ACTION_SEARCH代表的3。

因此改一下上面的if语句,加上一个条件即可:

 

//一般输入法或搜狗输入法点击搜索按键
if (actionId == EditorInfo.IME_ACTION_SEARCH || actionId == EditorInfo.IME_ACTION_UNSPECIFIED) {
        //这里调用搜索方法
	return true;
}

 

分享到:
评论

相关推荐

    Android一种输入法的源码

    - **BroadcastReceiver**:Android系统通过广播消息传递事件,输入法需要监听系统广播,如键盘显示/隐藏事件,以便及时响应。 - **Intent和IntentFilter**:Intent用于在不同组件之间传递数据和启动操作,...

    android软键盘上添加一个按钮

    在Android开发中,有时我们可能需要在软键盘上添加自定义功能,比如一个搜索按钮或者一个额外的操作选项。这个需求通常出现在输入框交互较多的应用场景,例如聊天应用、搜索引擎等。下面将详细介绍如何在Android的软...

    AnimLikeSougou仿搜狗输入法Android源代码

    《AnimLikeSougou:深度解析仿搜狗输入法Android源码》 在移动设备上,输入法作为用户与系统交互的重要桥梁,其设计和功能的优化直接影响到用户体验。本篇将深入探讨“AnimLikeSougou”项目,这是一个基于Android...

    Android 类似搜狗输入法android源码.rar

    在Android平台上,搜狗输入法是一款非常流行的第三方输入法应用,它提供了丰富的功能,包括拼音、五笔、英文、表情等多种输入方式,以及智能联想、云输入等特性。本源码是针对Android平台开发的一款类似搜狗输入法的...

    Android自定义输入法软键盘

    此外,输入法的性能优化也是不可忽视的,比如避免不必要的布局计算,合理利用内存,以及确保输入法响应用户的操作足够迅速。 总之,创建一个Android自定义输入法软键盘涉及了Android服务、布局设计、事件处理等多个...

    Android自定义键盘之中文键盘demo

    自定义键盘的核心是`InputMethodService`,它是Android系统提供的服务,允许开发者创建自己的输入法。你需要继承`InputMethodService`并覆写其相关方法来构建键盘的逻辑和视图。 2. **布局设计**: 创建XML布局...

    Android程序研发源码Android 输入法手势程序源码.rar

    8. **事件处理和回调机制**:了解如何在Android中处理触摸事件,以及在输入法服务中使用回调函数来响应用户输入和手势。 9. **权限管理**:输入法应用通常需要请求读写系统键盘布局的权限,以便替换默认输入法。 ...

    Android InputMethod 源码流程图

    整个过程中,`InputMethodManagerService`扮演着协调者的角色,它管理着所有输入法相关的状态和交互,确保输入法正确地响应用户和应用程序的需求。通过对这些流程的深入理解,开发者可以更好地定制自己的输入法服务...

    输入法与表情也切换demo

    通常,这两个元素会被封装在一个可滚动的视图中,以便于在屏幕空间有限的情况下,通过滑动或者点击按钮实现显示和隐藏。在Android中,可以使用`ScrollView`或`RecyclerView`来实现这个布局。 2. **动画过渡**:为了...

    ku-input qt输入法

    这可能包括内存管理、算法优化以及对多线程和异步操作的使用,以确保输入法的响应速度和流畅性。 10. **UI设计与国际化**: 考虑到可能的多语言用户,输入法的界面设计应遵循通用设计原则,并支持国际化。Qt提供了...

    最简单的输入法1.zip

    在Android操作系统中,输入法(Input Method)是用户与设备交互的重要组成部分,它允许用户通过键盘、触屏、语音等多种方式输入文本。本资源“最简单的输入法1.zip”提供了一个基础的Android输入法实现,适合初学者...

    Android自定义密码键盘

    为了提升用户体验,自定义键盘还可以添加动画效果,比如按键按下时的凸起效果、删除按钮的滑动动画等。这通常通过`Animation`类或属性动画(`Property Animation`)来实现。 6. **安全考虑**: 自定义密码键盘的...

    android 自定义软键盘

    为了让键盘能够正确显示并响应用户输入,还需要在`res/xml`目录下创建`input_method.xml`,配置服务的元数据,包括输入类型和键盘布局引用。 ```xml <input-method xmlns:android=...

    Android-NumberKeyboard自定义数字键盘

    在Android中,通过继承`InputMethodService`类,我们可以创建自己的输入法服务。这个服务会处理用户与键盘的交互,包括按键点击、字符输入等。`NumberKeyboard`项目可能就是这样实现的,它定义了键盘布局,包括数字0...

    android高仿微信聊天界面

    在Android平台上,构建一个高度仿真的微信聊天界面是一项复杂而精细的工作,涉及到多个技术层面和设计元素。这个项目包括了用户登录、摇一摇功能以及信息发送等核心交互部分,充分体现了Android应用开发中的UI设计与...

    输入法的回车与消息发送快捷键回车的冲突解决方法

    绑定keyup事件会将输入法中的英文文字输入到文字框并直接触发发送按钮 键盘事件: 当一个按键被pressed或者released,在每一个浏览器中都可能会触发三种键盘事件 keydown keypress keyup keydown事件发生在按键被按...

    android 键值查看工具

    在Android中,`keycode`是一个整数值,用于代表物理键盘上的特定键或设备上的软键盘按钮。Android系统为每个可识别的按键分配了一个唯一的keycode,例如KEYCODE_A代表字母"A"键,KEYCODE_ENTER代表回车键等。通过...

    android自定义全键盘随机(包含字母+标点符号+数字)

    在Android平台上,自定义全键盘是一项常见的需求,特别是在开发输入法或者特定应用时。这个“android自定义全键盘随机(包含字母+标点符号+数字)”项目提供了一个解决方案,它能够适应各种Android手机系统,为用户...

    Android开发实例详解之IMF(Android_SDK_Sample—SoftKeyboard).pdf

    1. 检查输入法是否能正确响应用户的输入动作。 2. 测试输入法在不同屏幕尺寸和方向上的表现。 3. 检查候选词列表是否按预期工作。 4. 确保输入法能够在不同语言之间正确切换。 #### 六、输入法的调用 最后一步是...

Global site tag (gtag.js) - Google Analytics