1、SearchView是搜索框组件,它可以让用户在文本框里输入文字,通过监听器取得用户的输入,当用户点击搜索时,监听器执行实际的搜索。


2、SearchView组件的常用方法如下:

①setIconifiedByDefault(boolean iconified) ===> 设置搜索框默认是否自动缩小为图标。
②setOnQueryTextListener(SearchView,OnQueryTextListener listener) ===> 为搜索框设置监听器
③setSubmitButtonEnabled(boolean enabled) ===> 设置是否显示搜索按钮
④setQueryHint(CharSequence hint) ===> 设置搜索框内的默认显示的提示文本


3、为SearchView增加一个配套的ListView,则可以为其增加自动完成的功能,即ListView用于为SearchView显示自动补齐列表


4、具体实现代码如下:

<?xml version="1.0" encoding="utf-8"?>

package org.crazyit.ui;import android.os.Bundle;import android.text.TextUtils;import android.widget.ArrayAdapter;import android.widget.ListView;import android.widget.SearchView;import android.widget.Toast;import android.app.Activity;public class SearchViewTest extends Activity implementsSearchView.OnQueryTextListener {private SearchView sv;private ListView lv;// 自动完成的列表private final String[] mStrings = { "aaaaa", "bbbbbb", "cccccc", "ddddddd" };@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);lv = (ListView) findViewById(R.id.lv);lv.setAdapter(new ArrayAdapter(this,android.R.layout.simple_list_item_1, mStrings));lv.setTextFilterEnabled(true);//设置lv可以被过虑sv = (SearchView) findViewById(R.id.sv);// 设置该SearchView默认是否自动缩小为图标sv.setIconifiedByDefault(false);// 为该SearchView组件设置事件监听器sv.setOnQueryTextListener(this);// 设置该SearchView显示搜索按钮sv.setSubmitButtonEnabled(true);// 设置该SearchView内默认显示的提示文本sv.setQueryHint("查找");}// 用户输入字符时激发该方法@Overridepublic boolean onQueryTextChange(String newText) {Toast.makeText(SearchViewTest.this, "textChange--->" + newText, 1).show();if (TextUtils.isEmpty(newText)) {// 清除ListView的过滤lv.clearTextFilter();} else {// 使用用户输入的内容对ListView的列表项进行过滤lv.setFilterText(newText);}return true;}// 单击搜索按钮时激发该方法@Overridepublic boolean onQueryTextSubmit(String query) {// 实际应用中应该在该方法内执行实际查询// 此处仅使用Toast显示用户输入的查询内容Toast.makeText(this, "您的选择是:" + query, Toast.LENGTH_SHORT).show();return false;}}



更多相关文章

  1. Android录音应用实例教程
  2. 导入的android项目报错,进入一个类,显示不能导入那些基本的java AP
  3. 10天学通Android开发(4)-用户布局与常用控件
  4. android 倒计时的控件,以动画的形式平滑的完成数字的过度
  5. Android各种信息的显示
  6. android开发――ListView组件
  7. Android(安卓)Studio开发界面自定义,更有利于开发
  8. 2012年4月7日学习记录
  9. [置顶] android webview 更改显示的分辨率,单独更改文字大小2.

随机推荐

  1. 【Android】学习笔记(4)――基本控件之Pr
  2. 捕获Android文本中链接点击事件
  3. android静音的实现
  4. Android(安卓)Studio中使用过程中遇到的
  5. 在iOS和Android中使用二维码ZXing库及常
  6. android多activity退出整个程序的一个实
  7. Android(安卓)防止PC端第三方流氓软件强
  8. matix in Android
  9. Android中实现应用程序的国际化与本地化
  10. Android手机开发:android:layout_weight属