概述

AutoCompleteTextVeiw(自动完成文本框)从 EditText派生而出
         当用户输入一定字符后,自动完成自动完成文本框会显示一个下拉菜单,供用户选择某个菜单项之后,AutoCompleteTextView按用户选择自动填写该文本框
 

XML属性

AutoCompleteTextView除了可使用EditText提供的XMl属性和方法之外,还支持如下常用的XML属性和方法
android:completionHint setCompletionHint(CharSequence) 设置下拉菜单中的提示标题
android:completionHintView   设置下拉菜单中提示标题的视图
android:completionThreshold setThreshold(int) 设置用户至少输入几个字符才会显示提示
adnroid:dropDownAnchor setDropDownAnchor(int) 设置下拉菜单的定位“锚点”组件,如果没有指定该属性,将使用该TextView本身作为定位”锚点“组件
adnroid:dropDownHeight setDropDownHeight(int) 设置下拉菜单的高度
android:dropDownHorizontalOffest   设置下拉菜单与文本框之间的水平偏移,下拉菜单默认与文本框左对齐
adnroid:dropDownVerticalOffest   设置下拉菜单与文本框之间的垂直偏移,下拉菜单默认紧跟文本框
android:dropDownWidth setDropDownWidth(int) 设置下拉菜单的宽度
android:popupBackground setDropDownBackgroundResource(int) 设置下拉菜单的背景
 AutoCompleteeTextView还派生了一个子类(MultiAutoCompleteTextView),该子类的功能与AutoCompleteTextView基本相似,只是MultiAutoCompleteTextView允许输入多个提示项,多个提示项以分隔符分隔。
 

案例

Android_AutoCompleteTextView/res/layout/activity_mian.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<!-- 定义一个自动完成文本框 -->
<AutoCompleteTextView android:id="@+id/auto"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:completionHint="请选择您喜欢的名人"
android:dropDownHorizontalOffset="10dp"
android:completionThreshold="1"
/>
<!-- 定义一个MultiAutoCompleteTextView组件 -->
<MultiAutoCompleteTextView
android:id="@+id/mauto"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:completionThreshold="1"
/> </LinearLayout>

java代码

package com.example.android_autocompletetextview;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.MultiAutoCompleteTextView; public class MainActivity extends Activity { AutoCompleteTextView person;
MultiAutoCompleteTextView mauto;
//定义字符串数组,作为提示的文本
String[] personData = new String[]
{
"Jobs",
"LiKaifu",
"maYun"
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//创建一个ArrayAdapter,封装数组
ArrayAdapter<String> pp = new ArrayAdapter<String>(
this,android.R.layout.simple_dropdown_item_1line,personData);
person = (AutoCompleteTextView) findViewById(R.id.auto);
mauto = (MultiAutoCompleteTextView) findViewById(R.id.mauto);
//设置Adapter
person.setAdapter(pp);
mauto.setAdapter(pp);
//为MultiAutoCompleteTextView 设置分隔符
mauto.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); } @Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
} }

Android开发10.2:UI组件AutoCompleteTextView(自动完成文本框)的更多相关文章

  1. AutoCompleteTextView自动完成文本框

    AutoCompleteTextView是从EditText派生出来的,比普通编辑框多了一个功能,当用户输入一定字符后,自动完成文本框会显示一个下拉单,供用户选择,当选中一个后,被选中的内容会显示在文 ...

  2. Android开发8:UI组件TextView,EditText,Button

    版本:Android4.3 API18 学习整理:liuxinming TextView 概述 TextView直接继承了View(EditText.Button两个UI组件类的父类) TextVie ...

  3. 011 Android AutoCompleteTextView(自动完成文本框)的基本使用

    1.XML布局 android:completionThreshold="1":这里我们设置了输入一个字就显示提示 (1)主界面布局 <?xml version=" ...

  4. android开发之 包含EditText组件 禁止自动获取焦点弹出输入法

    在EditText标签的外层Layout中加入focusableInTouchMode属性   android:focusableInTouchMode="true" 即可.

  5. Android零基础入门第47节:自动完成文本框AutoCompleteTextView

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

  6. 50个Android开发人员必备UI效果源码[转载]

    50个Android开发人员必备UI效果源码[转载] http://blog.csdn.net/qq1059458376/article/details/8145497 Android 仿微信之主页面 ...

  7. android开发 更新升级安装到一半自动闪退

    如题:android开发 更新升级安装到一半自动闪退,,,解决办法,如下(红色为我新增的代码) /**     * 安装APK文件     */    private void installApk( ...

  8. Android 自学之自动完成文本框 AutoCompleteTextView

    自动完成文本框(AutoCompleteTextView)从EditText派生而出,实际上他也是一个编辑框,但他比普通的编辑框多了一个功能:当用户输入一定字符后,自动完成文本框会显示一个下拉菜单,供 ...

  9. android脚步---自动完成文本框

    自动完成文本框AutoCompleteTextView,当用户输入一定字符时,自动完成文本框会显示一个下拉菜单,供用户选择,设置一个Adapter,该Adapter中封装了AutoCompleteTe ...

随机推荐

  1. python读取CSV文件

    python中有一个读写csv文件的包,直接import csv即可.利用这个python包可以很方便对csv文件进行操作,一些简单的用法如下. 1. 读文件 csv_reader = csv.rea ...

  2. poj 2299 Ultra-QuickSort 逆序对模版题

    用树状数组求逆序数 唯一的坑点就是sum要用long long存 直接贴代码了 以后忘了还能直接看 2333…… PS:和hdu3743代码是一样的,因为两个都是逆序对模版题…… #include&l ...

  3. linode digitalocean哪个更好

    大多数人纠结的品牌是Linode和DigitalOcean.我有幸使用过两者的产品,从2011年起,我就在用Linode VPS套餐,2013年开始,我订购了一批DigitalOcean产品,下面说下 ...

  4. 关于Mongdb的java的CRUD操作

    package mongodb; import java.net.UnknownHostException;import java.util.List; import com.mongodb.Basi ...

  5. WEB组件 开发 (未完成 4-13)

    整理自真阿当的阿当大话西游之WEB组件,课件中的代码下载. 14. 抽出widget类 组件分两大类: utility(大部分与UI无关的组件) 和 widget(应用层,大部分与UI相关的,日历组件 ...

  6. 使用HttpClient工具类测试WebService接口(soap)

    import java.io.ByteArrayInputStream;import java.io.IOException;import java.io.InputStream;import jav ...

  7. 巧用weui.topTips验证数据

    场景一.有一个输入金额的场景,这个金额需要验证,验证说明如下: 不能为空格: 不能为0: 不能为汉字: 不能为其它字符: 不能大于200: 唯一可以的是,只有输入3~199之间的数字,下面的确定按钮才 ...

  8. CSS3秘笈:第十二章&第十三章

    第十二章 1.网页布局类型 (1)固定宽度 (2)流式 (3)响应式Web设计 2.CSS布局的方法 通过给元素设置一个宽度,将它浮到左侧或右侧,就可以创建一个列(元素后面的文本会环绕浮动的元素,仿佛 ...

  9. Python使用os.listdir()函数来获得目录中的内容

    摘自:http://it.100xuexi.com/view/otdetail/20130423/057606dc-7ad1-47e4-8ea6-0cf75f514837.html   1.在Pyth ...

  10. 使用Visual C++编程

    1.Visual C++的主要组件 Visual C++支持遵循C++11语言标准的C++语句,C++11语言标准是在ISO/IEC 14882:2011文档中定义的.Visual C++还没有实现该 ...