Android中AutoCompleteTextView与TextWatcher结合小实例

作者:conowen 时间:2023-11-07 06:27:22 

AutoCompleteTextView是实现动态匹配输入内容的一种输入框(EditText),如输入“and”时,会提示“Android”

效果图:

Android中AutoCompleteTextView与TextWatcher结合小实例

实现代码:


package com.conowen.test;

import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.widget.AutoCompleteTextView;

public class DrComActivity extends Activity {

/** Called when the activity is first created. */
 @Override
 public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.main);

AutoCompleteTextView autoinput =(AutoCompleteTextView) findViewById(R.id.autoinput);

autoinput.setThreshold(1);// 输入一个字母就开始自动提示

autoinput.addTextChangedListener(new TextWatcher() {

@Override
   public void onTextChanged(CharSequence s, int start, int before, int count) {
     // TODO Auto-generated method stub
     //s是输入框正在输的字符串,随着不断的输入,s的值也会不停地改变

String str = s.toString();

String[] temp = getInputAdapter(getInputWorldOrder(str));
        //此处代码省略,自己通过查询数据库或者其他方法,动态地获取相应的字符串数组
        //如做一个字典时,不可能预先把所有单词做成一个adapter,应该根据输入的字符,
       //动态地查询一定数量的相对应的单词,然后再构建adapter
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(ct,
        android.R.layout.simple_dropdown_item_1line, temp);

autoinput.setAdapter(adapter)

//正在输入时,构建adapter,然后把adapter绑定在AutoCompleteTextView 上面

@Override
   public void beforeTextChanged(CharSequence s, int start, int count,
       int after) {
     // TODO Auto-generated method stub

}

@Override
   public void afterTextChanged(Editable s) {
     // TODO Auto-generated method stub

}

}
 }
}
标签:Android,AutoCompleteTextView,TextWatcher
0
投稿

猜你喜欢

  • springboot-curd基于mybatis项目搭建

    2023-12-08 10:41:05
  • C#文件后缀名的详细介绍

    2022-06-03 15:07:41
  • spring框架集成flyway项目的详细过程

    2023-09-14 11:47:14
  • @TransactionalEventListener的使用和实现原理分析

    2022-01-19 06:15:11
  • Mybatis查询时,区分大小写操作

    2021-08-11 14:10:54
  • C#中怎么将一个List转换为只读的

    2021-10-04 15:52:51
  • Springboot如何获取上下文ApplicationContext

    2023-11-27 23:42:41
  • python gstreamer实现视频快进/快退/循环播放功能

    2022-07-06 10:09:20
  • Android 7.0 Nougat不得不知的11项新功能

    2021-06-12 22:50:07
  • C#如何实现调取钉钉考勤接口的功能

    2023-09-14 17:31:47
  • 解析Android开发优化之:对界面UI的优化详解(一)

    2023-05-23 17:45:10
  • seata的部署和集成详细介绍

    2023-06-05 08:33:24
  • 使用java实现http多线程断点下载文件(一)

    2023-11-23 15:45:51
  • 简述Java图像倾斜方法及实例 <font color=red>原创</font>

    2023-08-16 09:38:47
  • Java实现三子棋小游戏

    2022-09-12 01:27:20
  • java 安全 ysoserial CommonsCollections6 分析

    2021-06-04 01:58:14
  • Android中ACTION_CANCEL的触发机制与滑出子view的情况

    2023-08-01 14:39:09
  • 解决springboot遇到autowire注入为null的问题

    2022-04-15 02:37:59
  • Mybatis执行流程、缓存原理及相关面试题汇总

    2022-10-15 23:30:28
  • Android中使用Bitmap类将矩形图片转为圆形的方法

    2022-01-04 18:47:40
  • asp之家 软件编程 m.aspxhome.com