当前位置: 首页 > news >正文

Android AutoCompleteTextView和MultiAutocompleteTextView实现动态自动匹配输入的内容

AutoCompleteTextView MultiAutocompleteTextView

这两个控件长的很相似,功能也很相似。

AutoCompleteTextView

  1. 功能:

    动态匹配输入的内容,如百度搜索引擎当输入文本时

    可以根据内容显示匹配的热门信息。

  2. 独特属性

    android:completionThreshold="2" //收入两个字符后自动匹配

        ----设置输入多少字符时自动匹配

那我们来看一下如何实现AutoCompleteTextView自动匹配。

  1. XML创建控件:

     

    1    <AutoCompleteTextView
    2         android:id="@+id/textview1"
    3         android:layout_width="match_parent"
    4         android:layout_height="wrap_content"
    5         android:completionThreshold="2"
    6         android:hint="AutoCompleteTextView" />

     

  2. Java代码关联并实现:

     

     1         /*
     2          * 第一步: 初始化控件 
     3          * 第二步: 需要一个适配器 
     4          * 第三步: 初始化数据源----这数据源去匹配文本框中输入的内容 
     5          * 第四步: 将adapter与当前AutoCompleteTextView绑定
     6          * 
     7          */
     8 
     9         acTextView = (AutoCompleteTextView) findViewById(R.id.textview1);
    10         ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
    11                 android.R.layout.simple_list_item_1, res);
    12         acTextView.setAdapter(adapter);
    13         

     

     

  3. 让我们调试下,功能已经实现了。

MultiAutocompleteTextView

  1. 功能:

    可支持多个值(在多次输入的情况下),分别用分隔符分开, 并且在每个值选中的时候再次输入值时会自动去匹配,

    可用在发短信,发邮件时选择联系人这种类型当中。

  2. 独特属性:

    android:completionThreshold="2" //收入两个字符后自动匹配

        ----设置输入多少字符时自动匹配

  3. 设置分隔符

    Mtxt.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());

    可以用这个方法设置,分隔

1>XML创建控件:

 

1     <MultiAutoCompleteTextView
2         android:id="@+id/textview2"
3         android:layout_width="match_parent"
4         android:layout_height="wrap_content"
5         android:layout_below="@id/textview1"
6         android:layout_marginTop="10dp"
7         android:hint="MultiAutoCompleteTextView" />

 

2>Java代码关联并实现:

 

 

 1         /*
 2          * 第一步: 初始化控件 
 3          * 第二步: 需要一个适配器 
 4          * 第三步: 初始化数据源----这数据源去匹配文本框中输入的内容 
 5          * 第四步: 将adapter与当前AutoCompleteTextView绑定
 6          * 第五步: 设置分隔符
 7          * 
 8          */
 9         macTextView = (MultiAutoCompleteTextView) findViewById(R.id.textview2);
10         macTextView.setAdapter(adapter);
11         //设置以逗号为分隔符为结束的符号
12         macTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());

 

3>让我们调试下,功能已经实现了。

这两个自动匹配的就做到这里了。这就是这两个自动匹配的用法。

这是我写的Demo:https://pan.baidu.com/s/1DxUoDTdhbL5kosXTx5S6Pw

转载于:https://www.cnblogs.com/MrChen-/p/10313890.html

相关文章:

  • socketserver
  • Python Revisited Day 04 (控制结构与函数)
  • 开源引路人:我的Apache Mentor之路
  • 一次性能优化:吞吐量从1提升到2500
  • Eureka自我保护机制与Eureka服务发现(Discovery)
  • __proto__ 和 prototype的关系
  • 这道js题你会吗?
  • java B2B2C源码电子商城系统-Spring Cloud Eureka自我保护机制
  • 基于 React TypeScript Webpack 的微前端应用模板
  • xgboost回归损失函数自定义【一】
  • Java null最佳实践
  • 36氪首发|「优仕美地医疗」获亿元级B轮融资,要打造日间手术机构的连锁服务网络...
  • 阿里云联合8家芯片商推“全平台通信模组”,加速物联网生态建设
  • MySQL设置主从复制
  • 赶紧收藏!新鲜出炉的重庆轨道交通图 首末班时间和线路都在里面
  • 【每日笔记】【Go学习笔记】2019-01-10 codis proxy处理流程
  • 78. Subsets
  • ES6语法详解(一)
  • JavaScript 基本功--面试宝典
  • Java编程基础24——递归练习
  • PHP 的 SAPI 是个什么东西
  • vue自定义指令实现v-tap插件
  • 大整数乘法-表格法
  • 精彩代码 vue.js
  • 使用权重正则化较少模型过拟合
  • 学习笔记:对象,原型和继承(1)
  • 硬币翻转问题,区间操作
  • 通过调用文摘列表API获取文摘
  • #Linux(make工具和makefile文件以及makefile语法)
  • (差分)胡桃爱原石
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .htaccess配置常用技巧
  • .NET C#版本和.NET版本以及VS版本的对应关系
  • .NET Core IdentityServer4实战-开篇介绍与规划
  • .net websocket 获取http登录的用户_如何解密浏览器的登录密码?获取浏览器内用户信息?...
  • .net 简单实现MD5
  • .NET 中 GetProcess 相关方法的性能
  • .net 逐行读取大文本文件_如何使用 Java 灵活读取 Excel 内容 ?
  • .NET/C# 中设置当发生某个特定异常时进入断点(不借助 Visual Studio 的纯代码实现)
  • .net知识和学习方法系列(二十一)CLR-枚举
  • /usr/bin/python: can't decompress data; zlib not available 的异常处理
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题
  • @JoinTable会自动删除关联表的数据
  • [Android实例] 保持屏幕长亮的两种方法 [转]
  • [idea]关于idea开发乱码的配置
  • [JavaEE]线程的状态与安全
  • [Java并发编程实战] 共享对象之可见性
  • [jobdu]不用加减乘除做加法
  • [mvc] 简单的forms认证
  • [POI2009]WIE-Hexer
  • [Python基础]Python文件处理小结
  • [Spring Boot 3] 整合NoSQL与构建RESTful服务
  • [unreal] 切换关卡