SearchView的简单使用和模拟搜索
来源:互联网 发布:程序编程范式是什么 编辑:程序博客网 时间:2024/06/05 07:53
android SearchView其实就是EditView添加了一些方法,可以达到搜索的功能,首先先看它的布局文件,这是v7包下的SearchView
<android.support.v7.widget.SearchView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/find_serach" app:queryHint="请输入搜索的文字" ></android.support.v7.widget.SearchView>其中queryHint就是默认文字,这里还可以设置自定义的文字颜色和背景,剩下主要是代码部分,我先为大家介绍几个方法,我亲自测试过的:1.setIconifiedByDefault()是设置搜索框是否默认展开;2.setSubmitButtonEnabled()是否设置一个提交按钮;其他功能看下表:
SearchView属性
属性名称 相关方法 描述 android:iconifiedByDefaultsetIconifiedByDefault(boolean)设置搜索图标是否显示在搜索框内 android:imeOptionssetImeOptions(int)设置输入法搜索选项字段,默认是搜索,可以是:下一页、发送、完成等 android:inputTypesetInputType(int)设置输入类型 android:maxWidthsetMaxWidth(int)设置最大宽度 android:queryHintsetQueryHint(CharSequence)设置查询提示字符串
监听方法:setOnQueryTextListener();这是监听我们搜索时,和搜索后的方法,它内含两个方法onQueryTextSubmit(String query)这是提交时的方法,可以根据你提交的内容进行相应的搜索操作,onQueryTextChange(String newText)这是在搜索框内输入内容时,可以像百度,淘宝,搜索时模糊推荐选项,供你选择;其他也没什么了,接下来看完整代码:public class FindActivity extends AppCompatActivity implements SearchView.OnQueryTextListener { private SearchView searchView; private List<String> data=new ArrayList<>(); private ListView lv; private List<String> arr; @Override protected void onCreate(Bundle savedInstanceState) { getSupportActionBar().hide(); super.onCreate(savedInstanceState); arr = new ArrayList<>(); searchView = (SearchView) findViewById(R.id.find_serach); searchView.setIconifiedByDefault(false); searchView.setSubmitButtonEnabled(true); searchView.setOnQueryTextListener(this); lv = (ListView) findViewById(R.id.lv_query_name); for (int i = 0; i < 10; i++) { arr.add("data"+i); } lv.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, arr));//给listVIew设置可过滤的操作 lv.setTextFilterEnabled(true); } @Override public boolean onQueryTextSubmit(String query) {//跳转到手机自带的浏览器百度或者谷歌 Intent intent = new Intent(); intent.setAction(Intent.ACTION_WEB_SEARCH); intent.putExtra(SearchManager.QUERY, query); startActivity(intent); return false; } @Override public boolean onQueryTextChange(String newText) {//判断是否输入内容,并进入过滤操作 if(!TextUtils.isEmpty(newText)) { lv.setFilterText(newText); } else { lv.clearTextFilter(); } return false; }}
分享到此结束,请多多指教,希望对你们有些帮助。
阅读全文
0 0
- SearchView的简单使用和模拟搜索
- <SearchView > 搜索框的简单使用
- SearchView的简单使用
- 使用searchView搜索ListView的关键字
- ActionBarSherlock中的搜索及SearchView的使用 ...
- android中SearchView的简单使用
- 一个最简单的基于Android SearchView的搜索框
- SearchView和listview实现搜索
- ToolBar和SearchView的使用总结
- android:ToolBar和SearchView的使用总结
- ToolBar和SearchView的使用总结
- 【android-view】searchView 的搜索按钮使用问题。
- SearchView的简单用法
- Android中的搜索框(SearchView)的功能和用法
- Android SearchView 修改hint颜色和搜索字的颜色
- Android中的搜索框(SearchView)的功能和用法
- Android 搜索框:SearchView 的属性和用法详解
- Android 搜索框:SearchView 的属性和用法详解
- 学习笔记 2017-9-18
- spring初始化完成后将基础数据放入项目缓存
- 《项目一》规则区域上的漏油检测
- 双向链表
- 清理缓存
- SearchView的简单使用和模拟搜索
- JSON数据格式
- 单元测试Junit的使用
- python selenium 爬取淘宝商品数据
- 编辑距离及编辑距离算法
- webpack不是内部命令问题补充(window系统)
- 2d 3d 转换的补充
- Nginx编译安装
- JavaScript禁止微信浏览器下拉回弹效果