小编给大家分享一下Android怎么实现动态自动匹配输入内容,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
Android实现动态自动匹配的控件主要有MultiAutoCompleteTextView和AutoCompleteTextView
MultiAutoCompleteTextView:
可支持选择多个值(在多次输入的情况下),分别用分隔符分开,并且在每个值选中的时候再次输入值时会自动去匹配
可用在发短信,发邮件时选择联系人这种类型当中,使用时需要执行设置分隔符方法.
AutoCompleteTextView:
支持基本的自动完成功能,适用在各种搜索功能中,并且可以根据自己的需求设置他的默认显示数据
两个控件都可以很灵活的预置匹配的那些数据,并且可以设置输入多少值时开始匹配等等功能
效果图如下
输入相应的字符就会出现相应的提示,具体操作如下
在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>
以上是“Android怎么实现动态自动匹配输入内容”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。