Android控件之AutoCompleteTextView提示输入

效果图 

AutoComepleteTextView 控件的主要的作用是在用户输入中,提示输入。但是只能提示一次。这里就出项了MultiautoCompleteTextView控件,其主要的功能是也是在用户输入中提示输入。

AutoComepleteTextView与MultiautoCompleteTextView区别

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

MultiAutoCompleteTextView:
       该控件可支持选择多个值(在多次输入的情况下),分别用分隔符分开,并且在每个值选中的时候再次输入值时会自动去匹配。可用在发短信,发邮件时选择联系人这种类型当中。使用时需要执行设置分隔符方法。

activity_main:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
        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:background="@mipmap/beijingtub"
        android:orientation="vertical"
        tools:context=".MainActivity">

    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="AutoCompleteTextView"
          />
    <AutoCompleteTextView
            android:id="@+id/auto"
            android:layout_width="match_parent"
            android:layout_height="50dp"/>


    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="MultiAutoCompleteTextView"
    />
    <MultiAutoCompleteTextView
            android:id="@+id/mul"
            android:layout_width="match_parent"
            android:layout_height="50dp"/>


</LinearLayout>

MainActivity.java:

这里需要对控件添加适配器。可以参考其他博主文章https://blog.csdn.net/github_37855556/article/details/65434509?fps=1&locationNum=6

package com.example.a13468.mydemo11_autocompletetextview;

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

public class MainActivity extends Activity {
    private AutoCompleteTextView auto;
    private MultiAutoCompleteTextView mul;



    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        auto = (AutoCompleteTextView) findViewById(R.id.auto);
        mul = (MultiAutoCompleteTextView) findViewById(R.id.mul);

        String [] autoString =new String[]{
                "China四川","China成都","China泸州","liquor剑南春","liquor泸州老窖1573","liquor茅台"
        };

        /**
         * 第二个参数表示适配器的下拉风格
         */
        ArrayAdapter<String> adapter=new ArrayAdapter<String>(MainActivity.this,
                android.R.layout.simple_spinner_dropdown_item,autoString);

        /**
         * 添加适配器
         */
        auto.setAdapter(adapter);

        /**
         * MultiAutoCompleteTextView添加适配器
         */
        mul.setAdapter(adapter);
        //完成选项的拆分,分隔符为逗号
        mul.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_42370957/article/details/84106761