以在搜索框搜索时,自动补全为例:

其中还涉及到一个词,Tokenizer:分词器,分解器。

上效果图:

MainActivity.java:

package com.joan.testautocomletetextview;import android.R.array;
import android.os.Bundle;
import android.app.Activity;
import android.content.res.Resources;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.MultiAutoCompleteTextView;
import android.widget.MultiAutoCompleteTextView.Tokenizer;public class MainActivity extends Activity {AutoCompleteTextView actv;MultiAutoCompleteTextView mactv;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);actv = (AutoCompleteTextView) findViewById(R.id.actv);mactv = (MultiAutoCompleteTextView) findViewById(R.id.mactv);// 取到Strings.xml中定义的数组String[] names = this.getResources().getStringArray(R.array.names);// 适配器// 第三个参数是数据源// 第二个参数是样式资源的idArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_expandable_list_item_1, names);// =============只能选择单个的自动补全=====================
        actv.setAdapter(adapter);// =============可选择多个的自动补全=====================// Tokenizer分词器,分解器// MultiAutoCompleteTextView.CommaTokenizer();这个简易的分解器可用于对由逗号和若干空格分割的列表进行分解.Tokenizer t = new MultiAutoCompleteTextView.CommaTokenizer();mactv.setAdapter(adapter);mactv.setTokenizer(t);}
}

strings.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources><string name="app_name">TestAutocompleteTextView</string><string name="action_settings">Settings</string><string name="hello_world">Hello world!</string><!--定义一个数组  --><string-array name="names"><item >zhangyu</item><item >zhangxinzhe</item><item >zhangxingxing</item><item >liudehua</item><item >liuyi</item></string-array>
</resources>

activity_main.xml:

<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:orientation="vertical"><TextView android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="只可选择单个"/><!--AutoCompleteTextView  自动补全,只能选择一个值 android:completionThreshold="1"  输入第一个字后自动补全 --><AutoCompleteTextViewandroid:id="@+id/actv"android:layout_width="match_parent"android:layout_height="wrap_content"android:hint="请输入搜索的名字"android:completionThreshold="1"/><TextView android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="可选择多个"/><!--MultiAutoCompleteTextView 可以选择多个值  --><MultiAutoCompleteTextView android:id="@+id/mactv"android:layout_width="match_parent"android:layout_height="wrap_content"android:hint="请输入搜索的名字"android:completionThreshold="1"/>
</LinearLayout>

Android 自动补全提示输入AutoCompleteTextView、 MultiAutoCompleteTextView相关推荐

  1. [解决]eclipse中android自动补全/提示卡机或假死

    这是Eclipse3.6版本的特有问题,想彻底解决此问题的话,还是建议换为3.5/3.4: 在保持版本不变的前提下,可以按如下方法优化下: 解决办法: 1. 找到你的JDK安装目录下的src.zip文 ...

  2. Devc++设置代码自动补全\提示

    Devc++设置代码自动补全\提示 设置方法:下载 Red Panda Dev-C++软件

  3. vscode 取消按左括号,自动补全提示代码

    1.问题 你是否在使用 vsCode的时,输入一个函数,按了括号之后,会自动补全成提示的那个函数,但是那个函数并不是我们想输入的: 2.解决 我们可以在vscode的设置中进行设置 我们搜索:acce ...

  4. SmartBox自动补全用户输入

    用户在输入搜索关键词时,根据已经输入的部分,自动提示出后面可能需要输入的词,既减少了用户输入的劳动量,也可以提示用户当前有哪些备选,有效的降低输错的几率,提升搜索的体验. 在第一期中,我们做了一个汉字 ...

  5. linux中vim怎么分栏,Vim+Taglist+AutoComplPop之代码目录分栏信息和自动补全提示(Ubuntu环境)...

    一步: 首先在Ubuntu环境中安装ctags:  sudo apt-get install ctags 第二部: 解压: 1.$unzip -d taglist taglist_xx.zip 2.$ ...

  6. pl sql developer中的CnPlugin插件,sql代码自动补全提示,批量添加单引号

    一.安装 使用pl sql developer的版本7以上,下载CnPlugin插件,文件解压缩后,将里面的CnPlugin.dll和CnPlugin文件夹放到你的pl sql的安装路径中的PlugI ...

  7. android 自动补全方法,# AndroidStudio代码块的自动补全

    AndroidStudio代码块的自动补全 settings --> Editor --> Live Templates * 定义一个私有的内部类,在第一次用这个嵌套类时,会创建一个实例. ...

  8. eclipse + android 自动补全

    window-> Preferences-> Java-> Editor-> Content Assist 红色箭头所指的就是我们需要补全的首个字符.我们这里设置  .abcd ...

  9. android 自动补全方法,Android零基础入门|自动完成文本框AutoCompleteTextView

    原标题:Android零基础入门|自动完成文本框AutoCompleteTextView 上一期学习的Spinner的使用,掌握的怎么样?本期一起来学习AutoCompleteTextView的使用. ...

最新文章

  1. JavaScript实现prim普里姆算法(附完整源码)
  2. 【slighttpd】基于lighttpd架构的Server项目实战(8)—状态机机制回顾
  3. 【LeetCode笔记】1. 两数之和(JAVA、哈希表)
  4. Json的反序列化 .net Newtonsoft.Json
  5. 《Go 语言程序设计》读书笔记 (三) 方法
  6. 2017 多校联合训练 3 题解
  7. 分类和聚类的区别以及各自常见的算法
  8. 几款经典的免费小软件 -- 白领的左右手
  9. 指数历史估值源码分享,寻找最佳底部机会!
  10. 做新媒体短视频运营需要什么技能
  11. 在Linux Ubuntu上编译DNX
  12. 京东2018秋招编程题
  13. 图解SM2算法流程——第1章 概述
  14. 欧姆龙PLC HostLink通讯 C-MODE格式
  15. IDEA快捷键设置复制上一行
  16. sqlserver故障转移集群和alwayson的区别_详解SQL Server 2016 + AlwaysOn 无域集群
  17. 网络性能监控工具Smokeping
  18. 170亿参数,28项公开测试集SOTA,行业最大的视觉多任务统一大模型来了
  19. 【Info】车载芯片的几个大玩家:飞思卡尔(Freescale), 恩智浦(NXP), 高通(Qualcomm)
  20. B.特定领域知识图谱知识推理方案[一]:基于表示学习的知识感知推理算法[对抗负采样、Logic Rule,链接预测任务]在关系预测、推荐场景下应用

热门文章

  1. 电脑设置代理IP工具 可自动更新
  2. PHP网站管理系统-EBCMS易贝管理系统 v1.2.0
  3. MNews 1.9 – 干净的新闻自媒体博客wordpress主题
  4. 量数据导出Excel 之 多重影分身之术
  5. Web开发人员应当知道的15个开源项目
  6. CLR via C# 读书笔记 5-5 预留大内存
  7. cnblog div+CSS 布局常识 8问
  8. jQuery: 插件开发模式详解 $.extend(), $.fn, $.widget()
  9. magento SEO
  10. Linux: 传参数给alias