概述

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. Java comparable 和 comparator

    一.comparator 接口继承 public class ComparatorTest { /** * @param args */ public static void main(String[ ...

  2. android listen

    android监听机制,应该是一种观察者模式. 摘抄网上教程,观察者模式的结构如下: 其中涉及的角色有: ● 抽象主题(Subject)角色:抽象主题角色把所有对观察者对象的引用保存在一个聚集(比如A ...

  3. B - 小Y上学记——小Y的玩偶

    B - 小Y上学记——小Y的玩偶 Time Limit: 2000/1000MS (Java/Others)    Memory Limit: 128000/64000KB (Java/Others) ...

  4. Find The Multiple(bfs)

    Find The Multiple Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 20000/10000K (Java/Other) T ...

  5. 项目管理实践【六】自动同步数据库【Using Visual Studio with Source Control System to synchronize database automatically】

    在上一篇项目管理实践[五]自动编译和发布网站中,我们讲解了如何使用MSBuild+Robocopy+WebDeployment来自动编译和部署网站,今天,我们来看一下,如何使用MSBuild +SVN ...

  6. codeforce Gym 101102A Coins (01背包变形)

    01背包变形,注意dp过程的时候就需要取膜,否则会出错. 代码如下: #include<iostream> #include<cstdio> #include<cstri ...

  7. 学习笔记——命令模式Command

    命令模式,将具体操作Receiver封在Command中,调用类只需要知道Command即可.

  8. 【第五篇】androidEventbus源代码阅读和分析之unregister代码分析

    代码里面注销eventbus一般我们会在onDestory里面这么写: EventBus.getDefault().unregister(this); 然后走到unregister里面去看看: /** ...

  9. zencart 后台目录产品黄色icon_yellow_on.gif 解决方案

    解决方法,导入时候发现 更新成功! - 型号: as NO.1209 就是重复model 文件位置:manager\includes\modules\category_product_listing. ...

  10. aspx中如何加入javascript

    Response.Write("<script>window.location ='aaa.aspx';</script>"); Response.Writ ...