首页 > 系统 > Android > 正文

Android实现动态自动匹配输入内容

2019-10-21 21:41:56
字体:
来源:转载
供稿:网友

Android实现动态自动匹配的控件主要有MultiAutoCompleteTextView和AutoCompleteTextView

MultiAutoCompleteTextView:

可支持选择多个值(在多次输入的情况下),分别用分隔符分开,并且在每个值选中的时候再次输入值时会自动去匹配

可用在发短信,发邮件时选择联系人这种类型当中,使用时需要执行设置分隔符方法.

AutoCompleteTextView:

支持基本的自动完成功能,适用在各种搜索功能中,并且可以根据自己的需求设置他的默认显示数据

两个控件都可以很灵活的预置匹配的那些数据,并且可以设置输入多少值时开始匹配等等功能

效果图如下

Android,自动匹配,输入内容

输入相应的字符就会出现相应的提示,具体操作如下

在MainActivity.java中

package com.example.myapplication; import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.widget.ArrayAdapter;import android.widget.AutoCompleteTextView;import android.widget.MultiAutoCompleteTextView; public class MainActivity extends AppCompatActivity {  //初始化控件  private AutoCompleteTextView autoCompleteTextView;  private MultiAutoCompleteTextView multiAutoCompleteTextView;  //初始化数据源  private String [] res = {"biejing","nangchang","chengdu","shanghai"};  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    /**     * AutoCompleteTextView的用法     */    autoCompleteTextView = (AutoCompleteTextView) findViewById(R.id.auto_textView);    //创建适配器    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,res);    //将adapter与autoCompleteTextView绑定    autoCompleteTextView.setAdapter(adapter);     /**     * MultiAutoCompleteTextView的用法     */    multiAutoCompleteTextView = (MultiAutoCompleteTextView) findViewById(R.id.mauto_textView);    //将adapter与multiAutoCompleteTextView绑定    multiAutoCompleteTextView.setAdapter(adapter);    //设置以逗号为分隔符结束的符号    multiAutoCompleteTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());   }}

在activity_layout.xml中

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools"  android:id="@+id/activity_main"  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="com.example.myapplication.MainActivity"  android:orientation="vertical"  >   <AutoCompleteTextView    android:completionThreshold="3"    android:id="@+id/auto_textView"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:hint="请输入关键字"    />  <MultiAutoCompleteTextView    android:hint="请输入多个关键字"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:layout_below="@+id/auto_textView"    android:id="@+id/mauto_textView" /> </RelativeLayout>

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VEVB武林网。


注:相关教程知识阅读请移步到Android开发频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表