EditText与仿钉钉的搜索功能

需求:

  仿钉钉的通讯录搜索,点击搜索框后,跳页面,直接让输入框获取焦点并且弹出软键盘,当用户输入内容后,点击软键盘上的搜索,隐藏软键盘并且显示列表。 总结需求如下:

  1. 进入页面后输入框获取焦点并且默认打开软键盘
  2. 修改软键盘的确定键为搜索按钮,并且监听搜素按钮
  3. 搜索后隐藏软键盘,刷新数据

效果图:

实现:

  • 输入框获取焦点
et_content.setFocusable(true);
et_content.setFocusableInTouchMode(true);
et_content.requestFocus();
  • 打开软键盘
InputMethodManager inputManager =(InputMethodManager)et_content.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.showSoftInput(et_content, 0);
  • 修改软键盘按钮
android:imeOptions="actionSearch"
  • 监听软键盘的搜索按钮
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
    switch (actionId){
        case EditorInfo.IME_ACTION_SEARCH:
            startSearch();
            break;
    }
    return false;
}
  • 隐藏软键盘
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(et_content.getWindowToken(), 0);

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏24K纯开源

Android开发中的全屏背景显示方案

引子     不管是Android还是iOS平台中,都可以看到一些应用在启动的时候会先出现一个启动画面(Splash Activity),如QQ、微信等。这个启...

27350
来自专栏天天

基于cube-ui搭建移动端项目

cube-ui 搭配 webpack 2+ 支持后编译和普通编译 2 种构建方式(默认使用后编译),使用前都需要修改应用的依赖和配置。

47220
来自专栏向治洪

Android WindowManager详解

概述 WindowManager是Android中一个重要的服务(Service )。WindowManager Service 是全局的,是唯一的。它将用户的...

31590
来自专栏向治洪

Android系统服务之WindowManager整理

概述 WindowManager是Android中一个重要的服务(Service )。WindowManager Service 是全局的,是唯一的。它将用户的...

227100
来自专栏用户2442861的专栏

HTML中使背景图片自适应浏览器大小

1、图片不够大,又background属性不能拉伸图片; 2、只能用个div,把其z-index值设为负,并使这个div大小为整个body大小,在div里用<...

1.6K10
来自专栏xingoo, 一个梦想做发明家的程序员

快捷键整理

Eclipse 跳转到指定行:ctrl+l 1几个最重要的快捷键 代码助手:Ctrl+Space(简体中文操作系统是Alt+/) 快速修正:Ctrl+1 单词补...

19890
来自专栏Winter漫聊技术

使TextView消失的10种方法

但是,这在某些情况下无法满足业务需求,比如说某控件既有图像又有文字,而我只想让文字消失,那上面的方法显然不行,这时可以使用

13530
来自专栏web开发

web前端几个小知识点笔记

1、css实现宽度是百分比的盒子为正方形 <div style="width:50%;padding-bottom:50%;height:0px;backgro...

41250
来自专栏菩提树下的杨过

Silverlight:MouseDragElementBehavior无法应用于ListBox的变相解决办法

Blend自带的行为MouseDragElementBehavior应用到ListBox后,如果用鼠标按住列表列拖动,没有任何效果,在多次尝试中意外发现,如果将...

23880
来自专栏跟着阿笨一起玩NET

winfrom向窗体中拖放图片并显示

首先要设置窗体的AllowDrop属性为true。然后在窗体的DragEnter事件中添加如下代码:调用自定义的显示图片的方法。

12510

扫码关注云+社区

领取腾讯云代金券