android开发中为MultiAutoCompleteTextView控件添加其他分隔符,例如:分隔符改为分号“;”
zs;ls;ww;xm

//SemicolonTokenizer类


package com.example.android07;import android.text.SpannableString;
import android.text.Spanned;
import android.text.TextUtils;
import android.widget.MultiAutoCompleteTextView;public class SemicolonTokenizer implements MultiAutoCompleteTextView.Tokenizer {private char charS;private String mSTring;public SemicolonTokenizer(char charS) {this.charS = charS;mSTring = String.valueOf(charS);}public int findTokenStart(CharSequence text, int cursor) {int i = cursor;while (i > 0 && text.charAt(i - 1) != charS) {i--;}while (i < cursor && text.charAt(i) == ' ') {i++;}return i;}public int findTokenEnd(CharSequence text, int cursor) {int i = cursor;int len = text.length();while (i < len) {if (text.charAt(i) == charS) {return i;} else {i++;}}return len;}public CharSequence terminateToken(CharSequence text) {int i = text.length();while (i > 0 && text.charAt(i - 1) == ' ') {i--;}if (i > 0 && text.charAt(i - 1) == charS) {return text;} else {if (text instanceof Spanned) {SpannableString sp = new SpannableString(text + mSTring);TextUtils.copySpansFrom((Spanned) text, 0, text.length(), Object.class, sp, 0);return sp;} else {return text + mSTring;}}}
}

//MainActivity

private MultiAutoCompleteTextView main_actv;private String[] data4;//数据源private ArrayAdapter adapter4;//适配器main_actv = this.findViewById(R.id.main_actv);MultiAutoCompleteTextView.Tokenizer t = new MultiAutoCompleteTextView.CommaTokenizer();main_actv.setTokenizer(t);main_actv.setTokenizer(new SemicolonTokenizer(';'));data4 = new String[]{ "愤怒的小鸟", "汤姆猫", "落汤鸡", "牛牛", "哈巴狗", "神龙", "烤鸭","小象", "美人鱼", "九尾狐" };adapter4 = new ArrayAdapter(this,R.layout.actv_main_actv,data4);main_actv.setAdapter(adapter4);

android开发中为MultiAutoCompleteTextView控件添加其他分隔符相关推荐

  1. Android开发中目前流行控件和知识点总结

    1.SlidingMenu 滑动菜单 应用案例:Facebook . Path 2.0 .人人.网易新闻 下载地址: https://github.com/jfeinstein10/SlidingMe ...

  2. Android开发之日期时间控件选择

    Android开发之日期时间控件选择 文章目录 前言 一.创建弹出Layout 1.1 新建Layout,修改样式为LinearLayout 1.2 Layout中添加日期和时间控件 二.新建Date ...

  3. WinForm开发中针对TreeView控件改变当前选择节点的字体与颜色

    WinForm开发中针对TreeView控件改变当前选择节点的字体与颜色  在B/S开发中,对TreeView控件要改变当前选中节点的颜色比较方便,其有相应的SelectedNodeChanged事件 ...

  4. Android开发的之基本控件和详解四种布局方式

    Android中的控件的使用方式和iOS中控件的使用方式基本相同,都是事件驱动.给控件添加事件也有接口回调和委托代理的方式.今天这篇博客就总结一下Android中常用的基本控件以及布局方式.说到布局方 ...

  5. Visual Studio开发MFC项目OCX控件添加使用控件方法

    1.在Windows系统中注册OCX控件 在OCX控件目录,右键新建一个文本文档,将文件名和扩展名改为"双击注册.bat",添加如下注册脚本: cd /d %~dp0 RegSvr ...

  6. 为.net中的ListBox控件添加双击事件

    我在用dotnet做一个项目的过程中,遇到了一个ListBox的问题:通过在一个ListBox中双击,把选中的项添加到另一个ListBox中,但ListBox控件本身并没有该事件,那么如何实现呢?我就 ...

  7. Android开发三:常用控件1--TextView、EditText、Button

    上一节写到android的工程目录结构,这一节继续,开始学习控件,中间的跨度挺大,关于Activity和intent的知识我就略过了,原因很简单,网上的关于那个的资料特别多,而且理论的东西我这都是了解 ...

  8. Android开发 第2课 控件TextView、Plain Text、ImageView、 Button、ImageButton以及点击事件

    控件 TextView 显示文本 Plain Text 输入文本 //将布局xml文件引入到activity当中setContentView(R.layout.activity_main);<! ...

  9. Android开发--RadioButton和CheckBox控件的使用

    在Android的开发中可能会用到RadioButton和CheckBox这两个控件,如果你对MFC开发熟悉的话,相信对这两个控件并不陌生,它们的形状也都是一样的,RadioButton是圆形单选按钮 ...

最新文章

  1. 2021-7-14 深度学习服务器Linux终端网络训练training(顶会ECCV网络BiSeNet)
  2. ts文件编译后变量在vscode里报错
  3. 学习JavaScript你必须掌握的8大知识点
  4. 【网易出品】2019不容错过的泛娱乐创新峰会来了!
  5. SQL Server表分区
  6. 客户端网络pomelo学习笔记 (3) node.js 与 c 客户端 Diffie-Hellman 密钥交换算法的实现客户端网络...
  7. Java编程语言的历史和未来
  8. 信息学奥赛C++语言:找第一个只出现一次的字符
  9. angularjs详解
  10. 为保证云应用及虚拟串口功能正常使用,请务必下载安装Windows系统环境补丁
  11. ESP_Easy BME280 WIFI MQTT传感器制作
  12. C语言入门练习— —累乘
  13. 基于docker的test-containers环境百宝箱
  14. Cocos2dx中Lua游戏性能优化指南
  15. iscsi btrfs 扩容操作
  16. 课程实训-校园导游系统
  17. php js实现流程图,详解js中构造流程图的核心技术JsPlumb(2)_javascript技巧
  18. python画log图
  19. 【FFH】如何在鸿蒙系统上进行抓包测试
  20. Pulmonary--Detection4

热门文章

  1. TWS耳机OVP芯片,过压保护电路芯片
  2. 各种注释-注释多行与取消多行注释快捷键
  3. Wormhole网站
  4. 自己买监控摄像头容易安装吗
  5. 【微信小程序】wampserver项目:点餐小程序
  6. VS2008试用版破解方法
  7. 三极管的上拉下拉电阻的选取
  8. Python网络爬虫之HTTP原理
  9. 做了7年开源数据库开发,我学到了什么?
  10. “区块链技术创新要植根市场”