Android之自动文本输入识别提示

本网站用的阿里云ECS,推荐大家用。自己搞个学习研究也不错
相信大家都熟悉自动识别提示吧,在我们的生活中随处可见,今天就让我为大家简单介绍一下它是如何设计的。

所谓自动识别输入即是根据用户输入的已有信息,为用户提示可能的值,方便用户完成输入。在Android设备上这种功能分为:AutoCompleteTextView和MultiAutoCompleteTextView,前者为单个的自动识别,类似与搜索引擎的输入框提示;后者为多个值自动识别,类似与发邮件时的邮箱输入框。那它们俩到底如何使用呢?下面就让我们一起学习一下吧。

首先是布局文件:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools=”http://schemas.android.com/tools”
    android:layout_width=”match_parent”
    android:layout_height=”match_parent”
    android:paddingBottom=”@dimen/activity_vertical_margin”
    android:paddingLeft=”@dimen/activity_horizontal_margin”
    android:paddingRight=”@dimen/activity_horizontal_margin”
    android:paddingTop=”@dimen/activity_vertical_margin”
    tools:context=”.Activityfive” >
    <AutoCompleteTextView
        android:id=”@+id/acTextView”
        android:layout_width=”match_parent”
        android:layout_height=”wrap_content”
        android:hint=”请输入姓名:”
        android:textColor=”#000″
        android:maxLength=”10″
        />
    <MultiAutoCompleteTextView
        android:id=”@+id/macTextView”
        android:layout_below=”@id/acTextView”
        android:layout_width=”match_parent”
        android:layout_height=”wrap_content”
        android:hint=”请输入城市:”
        android:textColor=”#000″
        android:maxLength=”20″
        />

注:android:hint属性为提示文字内容,当如何输入框获得焦点后自动消失

下面是我们的Action:

import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.MultiAutoCompleteTextView;

public class Activityfive extends Activity{
   
    private AutoCompleteTextView acTextView;
    private MultiAutoCompleteTextView macTextView;
    private String [] arr = {“abc”,”abx”,”abo”,”bdc”,”bdf”};
    private String [] brr = {“ab北京”,”ab南京”,”ab东京”,”bb莫斯科”,”bb英国”,”bb美国”};
   
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_five);
        acTextView = (AutoCompleteTextView) findViewById(R.id.acTextView);
        macTextView = (MultiAutoCompleteTextView) findViewById(R.id.macTextView);
        ArrayAdapter arrAdapt = new ArrayAdapter(this, android.R.layout.simple_dropdown_item_1line, arr);
        acTextView.setAdapter(arrAdapt);
        ArrayAdapter brrAdapt = new ArrayAdapter(this, android.R.layout.simple_dropdown_item_1line, brr);
        macTextView.setAdapter(brrAdapt);
        macTextView.setThreshold(1);//设置输入多少个字符开始自动匹配
        macTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());//设置分隔符
    }
}

代码很简单,没有什么深奥的地方,相信大家一看就可以理解,对于一些不好理解的地方,我也已经添加了注释,希望对你有用。

Android 4.4.4 发布下载 http://www.linuxidc.com/Linux/2014-06/103467.htm

最简单的Ubuntu Touch & Android 双系统安装方式 http://www.linuxidc.com/Linux/2014-01/94881.htm

在Nexus上实现Ubuntu和Android 4.4.2 双启动 http://www.linuxidc.com/Linux/2014-05/101849.htm

Ubuntu 14.04 配置 Android SDK 开发环境 http://www.linuxidc.com/Linux/2014-05/101039.htm

64位Ubuntu 11.10下Android开发环境的搭建(JDK+Eclipse+ADT+Android SDK详细) http://www.linuxidc.com/Linux/2013-06/85303.htm

Ubuntu 14.04 x64配置Android 4.4 kitkat编译环境的方法 http://www.linuxidc.com/Linux/2014-04/101148.htm

Ubuntu 12.10 x64 安装 Android SDK http://www.linuxidc.com/Linux/2013-03/82005.htm

更多Android相关信息见Android 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=11</sp

未经允许不得转载:演道网 » Android之自动文本输入识别提示

赞 (0)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册