自动完成编辑框AutoCompleteTextView

自动完成编辑框的作用:一般用于搜索匹配文本框(例如淘宝搜东西),搜索时自动弹出提示词列表

AutoCompleteTextView实现原理是:EditText结合监听器TextWatcher与下拉列表Spinner,一旦监听到EditText的文本发生变化, 就自动弹出适配好的文字下拉列表,选中具体的下拉项向EditText填入相应文字

接下来就开始具体实现吧,下午煞笔了,搞了好久总是去创建布局,加入适配器中然后程序自动提示文本输入总是没效,很纳闷,直到发觉查了几篇百度的代码发觉他们的布局名字为什么会这么巧合都是一样的。。。于是我就想那个会不会是安卓系统已经内置好了的下拉框布局,于是依葫芦花样得照着它的名字打,android.R.layout.simple_dropdown_item_lline果然是内置布局,程序正常了这让入门安卓新手的我感动得是不要不要的。

上代码截图和运行结果:


img_09759252b19c232e414cf7754bff03f3.png
Mativity.java截图
img_db12d2def04562dea97370357046e8d9.png
运行截图

现在总结一下AutoCompleteTextView和MulitAutoCompleteTextView的常用方法:

xml布局中 completetionThreshold="1"  设置监听到输入第一个字符就开始匹配提示,若不设置则默认为2字符

multiAutoCompleteTextView.setThreshold(2);    //Java类中 设置输入多少字符时自动匹配

multiAutoCompleteTextView.setAdapter(arrayAdapter);    //设置适配

multiAutoCompleteTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());        // 设置分隔符

此处插播文本框设置跑马灯特效的几行xml代码:

img_7c4a1d0dbba858d271a6e57635f4ece1.png
xml设置跑马灯代码

PS:此处在Activity.java文件里要加一句tv.setSelected(true);  //不设置这一行是不会滚动的。

插播一些以后可能用得到的EditText属性

img_36ec5ed3ccd7787926106c667077991b.png
EditText部分属性

最后,因为刚入门,写得都是基础,如果错误请告诉改正。

优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/656529

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。