android searchview用法

【android searchview用法】Android SearchView提供了用于通过搜索提供程序提交的搜索查询的用户界面。 SearchView窗口小部件可以在ToolBar / ActionBar或布局内实现。
默认情况下,SearchView是可折叠的,并设置为使用SearchView类的setIconifiedByDefault(true)方法进行图标化。为了使搜索字段可见,SearchView使用setIconifiedByDefault(false)方法。
SearchView的方法

  1. public boolean onQueryTextSubmit(String query):它通过SearchView编辑器搜索关于内容提交的查询。这取决于大小写。
  2. public boolean onQueryTextChange(String newText):它在SearchView编辑器上更改文本时搜索查询。
SearchView的示例
让我们看一下布局上SearchView的示例,在ListView中搜索数据。
activity_main.xml
在包含ScrollView和ListView的布局文件夹中创建一个activity_main.xml文件。
文件:activity_main.xml
< ?xml version="1.0" encoding="utf-8"?> < RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.example.test.searchview.MainActivity">< ListView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/lv1" android:divider="#ad5" android:dividerHeight="2dp" android:layout_below="@+id/searchView"/>< SearchView android:id="@+id/searchView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:queryHint="Search Here" android:iconifiedByDefault="false" android:layout_alignParentTop="true" />< /RelativeLayout>

活动类
文件:MainActivity.java
package com.example.test.searchview; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.Filter; import android.widget.ListView; import android.widget.SearchView; import android.widget.Toast; import java.util.ArrayList; public class MainActivity extends AppCompatActivity { SearchView searchView; ListView listView; ArrayList< String> list; ArrayAdapter< String > adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); searchView = (SearchView) findViewById(R.id.searchView); listView = (ListView) findViewById(R.id.lv1); list = new ArrayList< >(); list.add("Apple"); list.add("Banana"); list.add("Pineapple"); list.add("Orange"); list.add("Lychee"); list.add("Gavava"); list.add("Peech"); list.add("Melon"); list.add("Watermelon"); list.add("Papaya"); adapter = new ArrayAdapter< String>(this, android.R.layout.simple_list_item_1, list); listView.setAdapter(adapter); searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() { @Override public boolean onQueryTextSubmit(String query) {if(list.contains(query)){ adapter.getFilter().filter(query); }else{ Toast.makeText(MainActivity.this, "No Match found", Toast.LENGTH_LONG).show(); } return false; }@Override public boolean onQueryTextChange(String newText) { //adapter.getFilter().filter(newText); return false; } }); } }

输出量
android searchview用法

文章图片
android searchview用法

文章图片
android searchview用法

文章图片

    推荐阅读