SearchView一个为用户提供输入搜索查询和提交请求给搜索提供者的用户界面部件。显示查询建议或结果列表,若是有的话,运行用户选择一条查询建议或结果并启动与其相关的操做。html
内部类android
interface SearchView.OnCloseListener app
(译者注:当用户关闭SearchView时触发的回调函数)wordpress
interface SearchView.OnQueryTextListener 函数
当查询文本改变时的回调函数。优化
interface SearchView.OnSuggestionListenerui
在建议上选择事件时的回调接口。spa
XML属性code
属性名称htm |
描述 |
android:iconifiedByDefault |
设置SearchView的默认状态。 若是为true,在没有被使用和点击展开时它将被图形化。 |
android:maxWidth |
SearchView的可选择的最大宽度 |
android:queryHint |
当查询条件为空时显示的一个提示字符串。 |
公共方法
public CharSequence getQuery ()
返回当前文本域中的查询字符串
返回值
查询字符串
public CursorAdapter getSuggestionsAdapter ()
若是有的话,返回用于搜索建议的适配器。
返回值
查询适配器
public boolean isIconfiedByDefault ()
返回查询区域默认的图标状态。
public boolean isIconified ()
返回SearchView当前的图标状态
返回值
若是SearchView目前是图标状态,返回true,若是查询区域是彻底可见的返回false
public boolean isQueryRefinementEnabled ()
返回查询优化是不是对全部的条目都起做用或者只是对特别的几个起做用
返回值
若是是对全部的条目起做用,刚返回true,不然返回false。
public boolean isSubmitButtonEnabled ()
返回当提交按钮在必须的时候是否可用或者从不显示
返回值
提交按钮在必须的时候是否自动启用
public boolean onKeyDown (int keyCode, KeyEvent event)
是否处理操做键按下事件
参数
keyCode 键入的键盘值,同时和键盘事件中的参数相同
event 输入键的完整事件记录
返回值
若是事件在这里被处理,返回true,不处理返回false
public void setIconified (boolean iconify)
图标化或者展开SearchView。当图标化时任何查询条件都被清除。这是一个临时的状态,不会重写被setIconifiedByDefault(boolean)设置的默认图标状态。若是默认的是图标化状态,则在用户关闭这个区域前都是false。若是默认的是展开状态,这里就是true,同时清除文本区域,但不关闭它。
参数
iconify true值会把SearchView收缩成一个图标,false值会展开它
返回值
查询字符串
public void setIconifiedByDefault (boolean iconified)
设置搜索栏的默认状态或者静止状态。若是是true,当被按下时,一个单一的搜索图标就会被默认显示,同时显示文本字段和其余按钮。若是默认的状态是图标,在按下关闭按钮时它就会收缩成那个状态。这个属性的改变会当即生效。
参数
iconified 搜索栏是否默认被图标化
public void setMaxWidth (int maxpixels)
以最宽的像素相看
相关的XML属性
public void setOnCloseListener (SearchView.OnCloseListener listener)
当用户关闭SearchView时设置一个监听器通知用户
参数
listener 设置用户关闭SearchView时的监听器
public void setOnQueryTextFocusChangeListener (View.OnFocusChangeListener listener)
设置当查询区域字段改变时通知用户的监听器
参数
listener 设置焦点更改时的监听器
public void setOnQueryTextListener (SearchView.OnQueryTextListener listener)
为用户在SearchView内的操做设置监听器
参数
listener 当用户在SearchView操做时好比说点击按钮或者输入查询内容时,设置接收回调的监听器对象
public void setOnSearchClickListener (View.OnClickListener listener)
设置按钮被按下时的监听器。在默认状况下当文本字段不可见时才起做用,调用setIconified(false)也能够通知这个监听器。
参数
listener 当搜索按钮被点击或者文本字段编辑取消图形化时通知监听器
public void setOnSuggestionListener (SearchView.OnSuggestionListener listener)
设置当一条搜索建议被选中或者点击的时候的监听器
参数
listener 选择搜索建议事件的监听器
public void setQuery (CharSequence query, boolean submit)
设置文本区域的一个查询字符串并选择提交和查询。
参数
query 查询字符串。代替在文本区域已经存在的查询文本
submit 是否当即提交查询或者只更新文本区域的内容
public void setQueryHint (CharSequence hint)
设置在查询文本区域的提示文本。将覆盖SearchableInfo中的任何提示。
相关XML属性
参数
hint 要显示的提示文本
public void setQueryRefinementEnabled (boolean enable)
指定若是精确查询按钮是否在每条建议的旁边显示或者是否根据运营商建议中的设置在个别项目的标志决定。点击精确查询的按钮会用建议中的文本替换查询文本区域中的字段。这个标志只是在一个SearchableInfo中指定setSearchableInfo(SearchableInfo)且不使用定制的适配器时起做用。
参数
enable 若是全部的条目都有一个精确查询按钮刚为true,若是只有带精确查询标志的条目须要按钮,则为false。
参见
public void setSearchableInfo (SearchableInfo searchable)
给SearchView设置SearchableInfo。SearchableInfo中的属性用来显示标签,提示(hints),搜索建议,建立打开查询结果和控制其余功能好比一个声音按钮的intents。
参数
searchable 对于一个特殊的activiey或者,能从SearchManager中检索的SearchableInfo,全局的搜索提供者。
public void setSubmitButtonEnabled (boolean enabled)
当查询不为空时,显示一个提交按钮。若是SearchView被用来填充当前activity的内容,而且不会启动一个单独的activity,这里提交按钮会消失。
参数
enabled 设置为True时显示一个提交请求的按钮,当不须要请求按钮时设置为false。
public void setSuggestionsAdapter (CursorAdapter adapter)
若是你愿意,你能够设置一个定制的适配器。不然使用默认的适配器来显示和SearchableInfo相关的建议提供者的建议。
参见
setSearchableInfo(SearchableInfo)
补充
文章精选
Android ApiDemo示例解析(36):App->Search->Invoke Search
SearchViewを使用してListViewのアイテムにフィルターをかける
SearchView.OnCloseListener
译者署名:xiaoQLu
译者连接:http://www.cnblogs.com/xiaoQLu
版本:Android 3.0 r1
结构
继承关系
public static interface SearchView.OnCloseListener
android.widget.SearchView.OnCloseListener
公共方法
public abstract boolean onClose()
当用户尝试关闭SearchView的时候调用本方法。
返回值
若是用户想重写默认清除文本域的动做,返回true,不然返回false。
SearchView.OnQueryTextListener
译者署名:xiaoQLu
译者连接:http://www.cnblogs.com/xiaoQLu
版本:Android 3.0 r1
结构
继承关系
public static interface SearchView.OnQueryTextListener
android.widget.SearchView.OnQueryTextListener
类概述
查询内容发生改变时调用
公共方法
public abstract boolean onQueryTextChange (String newText)
当用户改变查询内容的时候调用
参数
newText 查询的文本字段的新内容
返回值
若是SearchView执行默认的动做,显示可能出现的建议,刚返回false。若是动做由监听器处理,刚返回true
public abstract boolean onQueryTextSubmit (String query)
当用户提交请求时调用。这多是由于在键盘上按下一个键或者点击一个提交按钮。这个监听器能够经过返回true来重写标准的动做,指明由它来处理提交请求。不然返回false让SearchView把这个请求转发到与之关联的intent去处理。
参数
query 要提交的查询内容
返回值
若是查询请求被监听器处理,刚返回true,若是SearchView执行默认的动做则返回false
SearchView.OnSuggestionListener
译者署名:xiaoQLu
译者连接:http://www.cnblogs.com/xiaoQLu
版本:Android 2.3 r1
结构
继承关系
Public static interface SearchView.OnSuggestionListener
android.widget.SearchView.OnSuggestionListener
类概述
选中搜索建议时的回调接口。当SearchableInfo 经过setSearchableInfo(SearchableInfo).特别指定时,才调用这些回调函数。
公共方法
public abstract boolean onSuggestionClick (int position)
当点击一条搜索建议时调用
参数
position 在建议列表中的点击项的绝对位置。
返回值
若是监听器处理这个事件,而且重写默认的处理方法,处理发送的intent请求或者是在这条目中指定的查询请求,刚返回true。不然返回false。
public abstract boolean onSuggestionSelect (int position)
经过导航选中搜索建议时调用
参数
position 在建议列表中绝对位置。
返回值
若是监听器处理这个事件,而且重写基于选中条目的处理方法,刚返回 true 。不然返回 false 。