Android的搜索框SearchView的用法-android学习之旅(三十九)
2015-06-04 22:15
633 查看
SearchView简介
SearchView是搜索框组件,他可以让用户搜索文字,然后显示。‘代码示例
这个示例加了衣蛾ListView用于为SearchView增加自动补全的功能。package peng.liu.test; import android.app.Activity; import android.graphics.Color; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.text.TextUtils; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.BaseAdapter; import android.widget.Button; import android.widget.CalendarView; import android.widget.DatePicker; import android.widget.EditText; import android.widget.FrameLayout; import android.widget.GridView; import android.widget.ImageSwitcher; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.ListView; import android.widget.NumberPicker; import android.widget.SearchView; import android.widget.SimpleAdapter; import android.widget.TextSwitcher; import android.widget.TextView; import android.widget.TimePicker; import android.widget.Toast; import android.widget.ViewFlipper; import android.widget.ViewSwitcher; import java.util.ArrayList; import java.util.Calendar; import java.util.HashMap; import java.util.List; import java.util.Map; public class MainActivity extends Activity implements SearchView.OnQueryTextListener{ private String[] strs = new String[]{ "java","python","html" }; private ListView list; private SearchView searchView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); list = (ListView) findViewById(R.id.list); list.setAdapter(new ArrayAdapter<String >(this,android.R.layout.simple_list_item_1,strs)); list.setTextFilterEnabled(true); searchView = (SearchView) findViewById(R.id.sv); searchView.setIconifiedByDefault(false); searchView.setOnQueryTextListener(this); searchView.setSubmitButtonEnabled(true); searchView.setQueryHint("查找"); } @Override public boolean onQueryTextSubmit(String s) { Toast.makeText(this,"搜索的字符"+s,Toast.LENGTH_LONG).show(); return false; } @Override public boolean onQueryTextChange(String s) { if (TextUtils.isEmpty(s)){ list.clearTextFilter(); }else{ list.setFilterText(s); } return true; } }
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity" android:orientation="vertical" > <SearchView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/sv"/> <ListView android:layout_width="match_parent" android:layout_height="0dp" android:id="@+id/list" android:layout_weight="1" /> </LinearLayout>
效果图
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories