当前位置: 移动技术网 > IT编程>移动开发>Android > Android搜索框SearchView属性和用法详解

Android搜索框SearchView属性和用法详解

2019年07月24日  | 移动技术网IT编程  | 我要评论

长海叔,吉首天气预报,逆转三国维基

searchview简介

searchview是android原生的搜索框控件,它提供了一个用户界面,用于用户搜索查询。
searchview默认是展示一个search的icon,点击icon展开搜索框,如果你想让搜索框默认就展开,可以通过seticonifiedbydefault(false);实现。

searchview属性


searchview使用

xml中定义searchview:

<?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:layout_margin="15dp"
 android:orientation="vertical"
 tools:context="com.airsaid.searchviewdemo.mainactivity">

 <searchview
  android:id="@+id/searchview"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:iconifiedbydefault="false"
  android:queryhint="请输入搜索内容" />

 <listview
  android:id="@+id/listview"
  android:layout_width="match_parent"
  android:layout_height="0dp"
  android:layout_weight="1" />
</linearlayout>

main代码:

public class mainactivity extends appcompatactivity {

 private string[] mstrs = {"aaa", "bbb", "ccc", "airsaid"};
 private searchview msearchview;
 private listview mlistview;

 @override
 protected void oncreate(bundle savedinstancestate) {
  super.oncreate(savedinstancestate);
  setcontentview(r.layout.activity_main);
  msearchview = (searchview) findviewbyid(r.id.searchview);
  mlistview = (listview) findviewbyid(r.id.listview);
  mlistview.setadapter(new arrayadapter<string>(this, android.r.layout.simple_list_item_1, mstrs));
  mlistview.settextfilterenabled(true);

  // 设置搜索文本监听
  msearchview.setonquerytextlistener(new searchview.onquerytextlistener() {
   // 当点击搜索按钮时触发该方法
   @override
   public boolean onquerytextsubmit(string query) {
    return false;
   }

   // 当搜索内容改变时触发该方法
   @override
   public boolean onquerytextchange(string newtext) {
    if (!textutils.isempty(newtext)){
     mlistview.setfiltertext(newtext);
    }else{
     mlistview.cleartextfilter();
    }
    return false;
   }
  });

 }
}

效果截图:

demo下载:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网