志不强者智不达,言不信者行不果。这篇文章主要讲述Android 中 SearchView相关的知识,希望能为你提供帮助。
package com.example.euphemiaxiao.classsearch; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; //import android.support.v7.widget.SearchView; import android.widget.SearchView; import android.text.TextUtils; import android.widget.ArrayAdapter; import android.widget.ListView; public class ClassSearch extends AppCompatActivity implements SearchView.OnQueryTextListener{private SearchView sv; private ListView lv; private ArrayAdapter< String> adapter; private final String[] mStrings={"2014211501","2014211502","2014211503","2014211504", "2015211501","2015211502","2015211503","2015211504"}; //private ArrayList< String> alist; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.class_search); lv=(ListView)findViewById(R.id.lv); adapter=new ArrayAdapter< String> (this,android.R.layout.simple_list_item_1,mStrings); lv.setAdapter(adapter); // lv.setAdapter(new ArrayAdapter< String> (this,android.R.layout.simple_list_item_1,mStrings)); lv.setTextFilterEnabled(true); //设置lv可以被过滤 sv=(SearchView)findViewById(R.id.sv); sv.setIconifiedByDefault(false); //设置该searchview默认不自动缩小为图标 sv.setOnQueryTextListener(this); //设置事件监听器 sv.setSubmitButtonEnabled(true); //设置显示搜索按钮 sv.setQueryHint("输入班号"); //设置默认显示文字}//单击搜索按钮时激发该方法 @Override public boolean onQueryTextSubmit(String query) { return false; }//用户输入字符时激发该方法 @Override public boolean onQueryTextChange(String newText) { if(TextUtils.isEmpty(newText)) {//清除ListView的过滤 lv.clearTextFilter(); } else {//使用用户输入的内容对ListView的列表项进行过滤 lv.setFilterText(newText); } return false; } }
【Android 中 SearchView】上面是classsearch代码
关于listview,开始报错在ArrayAdapter< String> ,错误是指向空指针。这里报错的主要原因来源于setContentView(R.layout.class_search),因为引向的不对所以理所应当调用一直是空指针。一定要看准你所调用的layout是哪个。之前有两个layout,引用错误导致一直报错,后来本人急性子,直接删除了另外一个,才发现这里的错误,写成另一个layout了。 关于searchview,报错在sv=(SearchView)findViewById(R.id.sv),错误是: android.widget.SearchView cannot be cast to android.support.v7.widget.SearchView 这个错误的解决是将import android.support.v7.widget.SearchView 改成import android.widget.SearchView就解决了(虽然并不知道为神马)
推荐阅读
- 用安卓写搜索
- Android BroadcastAnyWhere(Google Bug 17356824)漏洞具体分析
- 如何删除word空白页,本文教您如何删除word空白页
- 软件异常,本文教您怎样处理应用程序发生异常未知的软件异常
- 局域网共享,本文教您局域网共享怎样设置
- 电脑中毒,本文教您电脑中毒怎样办
- 系统资源不足,本文教您电脑系统资源不足怎样处理
- 音频管理器,本文教您台式机如何运用耳机——realtek高清晰音频管理器
- 快捷方式打开不了,本文教您怎样处理快捷方式打开不了