zoukankan      html  css  js  c++  java
  • Android 控件 -------- AutoCompleteTextView 动态匹配内容,例如 百度搜索提示下拉列表功能

    AutoCompleteTextView  

    支持基本的自动完成功能,适用在各种搜索功能中,并且可以根据自己的需求设置他的默认显示数据。
    两个控件都可以很灵活的预置匹配的那些数据,并且可以设置输入多少值时开始匹配等等功能。

    基本的布局文件

      

    <AutoCompleteTextView
    android:completionThreshold="2"
    android:id="@+id/autoCompleteTextView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:hint="请输入的搜索内容">

    <requestFocus />
    </AutoCompleteTextView>

    布局文件对应得Activity类

    /**

    * 第一步:初始化控件
    * 第二步: 需要一个适配器
    * 第三步: 初始化数据源 --- 这数据源去匹配文本框输入的内容
    * 第四步: 将adpter与当前autoCompleteTextView 控件绑定
    */

    auto = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, res);
    auto.setAdapter(adapter);

    MultiAutoCompleteTextView

    该控件可支持选择多个值(在多次输入的情况下),分别用分隔符分开,并且在每个值选中的时候再次输入值时会自动去匹配。
    可用在发短信,发邮件时选择联系人这种类型当中。
    使用时需要执行设置分隔符方法。

    <MultiAutoCompleteTextView
    android:id="@+id/multiAutoCompleteTextView1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/autoCompleteTextView1"
    android:layout_below="@+id/autoCompleteTextView1"
    android:layout_marginTop="89dp"
    android:ems="10"
    android:hint="请输入的搜索内容" />

      

    /**
    * 第一步:初始化控件
    * 第二步: 需要一个适配器
    * 第三步: 初始化数据源 --- 这数据源去匹配文本框输入的内容
    * 第四步: 将adpter与当前autoCompleteTextView 控件绑定
    * 第五步:设置分隔符
    */
    mauto = (MultiAutoCompleteTextView)findViewById(R.id.multiAutoCompleteTextView1);
    mauto.setAdapter(adapter);  //添加适配器
    mauto.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());   //设置分割符

  • 相关阅读:
    python数据分析之pandas库的Series应用
    LINUX学习
    DBA日常SQL之查询数据库运行状况
    使用RMAN从磁带库恢复归档文件
    PHP系列 | PHPexcel导入xls格式 ,提示错误:iconv(): Wrong charset, conversion from `CP936' to `UTF-8' is not allowed
    工具系列 | 使用Lodop进行WEB打印程序开发
    PHP系列 | 编译安装msgpack-php
    Nginx系列 | [转]Nginx 上传文件:client_max_body_size 、client_body_buffer_size
    PHP系列 | Session 存储在Redis
    PHP系列 | PHP5.6 安装 endroid/qr-code 遇到的问题
  • 原文地址:https://www.cnblogs.com/czhyuwj/p/4751400.html
Copyright © 2011-2022 走看看