Android的搜索框SearchView的用法-android学习之旅(三十九)

来源:互联网 发布:数据圈付费社区 编辑:程序博客网 时间:2024/06/04 17:44

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>

效果图

这里写图片描述

0 0
原创粉丝点击