SearchView使用

对于一款APP中,我们经常会使用到搜索框——SearchView,想必大家都不陌生,今天呢我给大家分享一个我在使用过程中意外发现的一种情况。

SearchView使用时必定涉及到输入法,常用的有搜狗输入法、qq输入法等第三方输入法,安卓系统也给我们提供了自带输入法。一般我们在打字

过程中会出现备选词区域,我们可以自行选择填入SearchView搜索框的内容;但是在使用中发现一种情况,点击某个字母会立即填入搜索框内,

没有出现备选区域,如果mSearchView设置了如下监听事件就会在填入第一个字母(注意是打字时出现的第一个字母,而不是完整的汉字内容)的时候就触发事件

mSearchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {    @Override    public boolean onQueryTextSubmit(String query) {        Log.i(TAG, "onQueryTextSubmit-->"+query);        return false;    }

@Override    public boolean onQueryTextChange(String newText) {        //隐藏输入框,该方法未给出        InputMethodUtil.hideInput(StaffInfoActivity.this);        return true;    }});
解决方案:
<android.support.v7.widget.SearchView    android:id="@+id/sv"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:layout_alignParentRight="true"    android:iconifiedByDefault="false"    android:imeOptions="actionDone"    android:inputType="text"/>
<!--android:imeOptions="actionDone"--><!--SearchView增加该属性可以解决使用系统自带输入法,打字立即填入输入框问题,先出现备选词-->

即始终让输入法打字时出现备选区域。

意外中发现的知识,多部手机测试有效,大家可以参考,有不明白的可以留言讨论,以上内容可能有讲解的不详细的地方,望见谅!
时间: 2024-12-28 08:53:27

SearchView使用的相关文章

Android零基础入门第62节:搜索框组件SearchView

原文:Android零基础入门第62节:搜索框组件SearchView 一.SearchView概述 SearchView是搜索框组件,它可以让用户在文本框内输入文字,并允许通过监听器监控用户输入,当用户输入完成后提交搜索时,也可通过监听器执行实际的搜索. SearchView默认是展示一个search的icon,点击icon展开搜索框,也可以自己设定图标.用SearchView时可指定如下表所示的常见XML属性及相关方法. 如果为SearchView增加一个配套的ListView,则可以为Se

Android学习笔记(29):搜索框SearchView

SearchView提供一个搜索框,可以监听用户输入,用户提交搜索时,也可以通过监听器执行实际行动. 常用XML属性和相关方法: XML属性 相关方法 说明 android:iconifiedByDefault setIconifiedByDefault(boolean) 设置搜索框是否自动缩小为图标 setSubmitButtonEnable(boolean) 设置是否显示搜索按钮 android:inputType setInputType(int) 设置输入文本格式 android:max

searchview用法

按照惯例,先获取控件,再加监听... 1 searchView = (SearchView) view3.findViewById(R.id.search); 2 searchView.setOnQueryTextListener(new OnQueryTextListener() { 3 4 @Override 5 public boolean onQueryTextSubmit(String query) { 6 Log.d("MainActivity", "onQuer

自定义searchview的编辑框,搜索按钮,删除按钮,光标等

多说无益,直接上代码. <pre name="code" class="java"><span style="white-space:pre"> </span> Class<?> argClass=mSearchView.getClass(); //指定某个私有属性 Field mSearchHintIconField = argClass.getDeclaredField("mSearc

actionbar中添加searchview并监听期伸缩/打开的方法

首先在xml中设置actionviewclass <item android:id="@+id/m1" android:title="setting" android:icon="@drawable/abc_ic_search_api_mtrl_alpha" android:showAsAction="always|collapseActionView" android:actionViewClass="and

搜索菜单栏侧滑效果控件SearchView

本人视频教程系类   iOS中CALayer的使用 效果1: 效果2: 项目中用到的图片 [email protected]: 源码: SearchView.h + SearchView.m // // SearchView.h // SearchView // // Created by YouXianMing on 14/12/25. // Copyright (c) 2014年 YouXianMing. All rights reserved. // #import <UIKit/UIKi

Android开发之核心特性SearchView的开发使用(源代码分享)

在Android上,搜索是一个核心用户特性.用户可以搜索可用的任何数据,不管内容是存促于设备本身或者需要通过网络访问.Android提供了一个搜索框架为用户创建一个一致的搜索体验,可以帮助你实现搜索应用程序.搜索框架提供两种搜索模式:一个搜索对话框(Search Dialog)位于搜索屏幕的顶部或窗口小部件(SearchView),可以将其嵌入到你的布局中.在这两种情况下,Android系统将帮助你搜索实现交付执行搜索的任务给一个特定的Activity.效果如下图所示. 当用户需要执行一个搜索的

【Android自定义View实战】之超简单SearchView

[Android自定义View实战]之超简单SearchView 在Android开发中我们经常会用到搜索框,而系统提供的又不尽完美.所以自定义一个比较简单的SearchView. 效果图 实现代码 package cn.bluemobi.dylan.searchview; import android.content.Context; import android.text.Editable; import android.text.TextWatcher; import android.ut

详细解读SearchView(一)—— 简单小例子

这次开的是一个讲解SearchView的栏目,第一篇主要是给一个小例子,让大家对这个搜索视图有一个了解,之后再分布细化来说. 目标: 我们先来定个目标,我们通过搜索框来输入要搜索的联系人名字,输入的时候下面的listview就展现出候选的人. 思路: 1.要得到联系人数据,就需要有访问联系人的权限 2.必须通过ContentResolver来得到操作联系人名单的指针 3.每次输入一个字的时候就应该触发一次搜索,并且能将搜索的结果展示出来 4.既然要进行搜索,那么就要用到SQL语句 实现: 1.

android searchView加ListView共同使用

在一些app内,很常见上面一个edittext 下面是个listview的界面,在edittext中输入东西,就可以达到搜索当前listview的目的.现在我们首先使用searchview + listview的方式来实现这样的功能 主要就是使用了searchview的onQueryTextChange内容改变的时候监听 以及onQueryTextSubmit点击了searchview右侧的确定搜索按钮监听 listview主要用到的是,允许listview进行过滤lv_main.setText