博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 中文 API (22) —— MultiAutoCompleteTextView
阅读量:5992 次
发布时间:2019-06-20

本文共 1438 字,大约阅读时间需要 4 分钟。

一、结构

    public class MultiAutoCompleteTextView extends AutoCompleteTextView

    java.lang.Object

      

        

          

            android.widget.AutoCompleteTextView

                                  android.widget.MultiAutoCompleteTextView

二、 类概述

    

  一个继承自AutoCompleteTextView可编辑的文本视图,能够对用户键入的文本进行有效地扩充提示,而不需要用户输入整个内容。(用户输入一部分内容,剩下的部分系统就会给予提示)。

  用户必须提供一个MultiAutoCompleteTextView.Tokenizer以用来区分不同的子串。

下面的代码片段展示了如何创建一个文本视图,这个视图用来对用户输入的国家名称进行有效地补充提示。

  

三、公共方法

         public boolean enoughToFilter ()

    此方法并不是检验什么时候文本的总长度超过了预定的值,而是在仅当从函数findTokenStart()到getSelectionEnd()函数得到的文本长度为0或者超过了预定值的时候才起作用。(译者注:当文本长度超过阈值时过滤

         public void performValidation ()

         此子类方法并不是用来确定整个文本的有效性,而是用来确定文本中的单个符号的有效性。空标记将被移除。

         public void setTokenizer (MultiAutoCompleteTextView.Tokenizer t)

         设置用来决定用户正在输入文本的范围的分词组件。

四、 受保护方法

         protected void performFiltering (CharSequence text, int keyCode)

此方法并不过滤整个编辑框的内容,只是过滤从函数findTokenStart() 到函数getSelectionEnd()获得的长度为0或者超过了预定的值的文本内容。

参数

text          指定过滤模式

keyCode           插入到编辑框中的最后一个字符;当字符(文本)是通过软键盘输入的时候,小心此字符的值可能为NULL

         protected void performFiltering (CharSequence text, int start, int end, int keyCode)

         启动对下拉式列表内容的过滤。过滤模式为编辑框中指定的范围。子类可覆盖此方法,以便于采用一个不同的模式。

         protected void replaceText (CharSequence text)

    通过替换从函数findTokenStart() 到函数 getSelectionEnd()得到的文本文本范围以及传递给函数terminateToken()的文版返回的结果来实现文本的输入。另外,文本的替换区域将会被标记为自动文本区,这样如果用户直接按DEL键,执行过程就会停止。子类可覆盖此方法来实现许多不同的文本插入工作。

参数

       
text          
下拉列表里的选中项
 

五、补充

    5.1  相关文章链接

      

      

      

本文转自博客园农民伯伯的博客,原文链接:,如需转载请自行联系原博主。

你可能感兴趣的文章
存储过程,触发器,游标
查看>>
object references an unsaved transient instance - save the transient instance before flushing
查看>>
iPhone控件之UIWebView2
查看>>
知物由学 | AI时代,那些黑客正在如何打磨他们的“利器”?(一)
查看>>
Mysql 查询decimal 引号‘’增加精度
查看>>
Flex的UI组件Tile
查看>>
Java中对象的等价性比较
查看>>
SQL datediff 计算时间差
查看>>
网易有道面经(2013校园招聘杭州站)zz
查看>>
IOS中block和代理
查看>>
Codeforces Round #196 (Div. 2) A. Puzzles 水题
查看>>
Can only modify an image if it contains a bitmap
查看>>
[.net 面向对象程序设计进阶] (1) 开篇
查看>>
JavaScript权威设计--JavaScript类型,值,变量(简要学习笔记三)
查看>>
Oracle一个中文汉字占用几个字节
查看>>
汇编开发环境
查看>>
git reset --hard 回滚以后 以后怎么再回去?
查看>>
【转】测试趋势之我的观点
查看>>
静态和动态链接
查看>>
500 OOPS: vsftpd: cannot locate user specified in 'chown_username':whoever
查看>>