AS的自动完成文本框AutoCompleteTextView与MultiAutoCompleteTextView的理解与实现

xml文件代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">

    <ListView
        android:id="@+id/list2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
    </ListView>

    <AutoCompleteTextView
        android:id="@+id/atv_content"
        android:layout_width="match_parent"
        android:layout_height="48dp"
        android:hint="请输入你要搜索的内容"
        android:completionThreshold="1"
        />

    <MultiAutoCompleteTextView
        android:id="@+id/matv_content"
        android:layout_width="match_parent"
        android:layout_height="48dp"
        android:completionThreshold="1"
        />

</LinearLayout>

其实AutoCompleteTextView与MultiAutoCompleteTextView这两个控件作用差不多
在.activity文件中用简单的Adapter将其实现。下面给出activity代码

package com.example.myapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Context;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.ListView;
import android.widget.MultiAutoCompleteTextView;
import android.widget.SimpleAdapter;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class MainActivity extends AppCompatActivity {

//自动文本框
    private AutoCompleteTextView atv_content;
    private MultiAutoCompleteTextView mtv_content;
    private static final String[] data=new String[]{"kkkk","沙生生","小鸡鸡"};


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

        atv_content=(AutoCompleteTextView)findViewById(R.id.atv_content);
        mtv_content=(MultiAutoCompleteTextView)findViewById(R.id.matv_content);

        ArrayAdapter<String>adapter=new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,data);
        atv_content.setAdapter(adapter);

        ArrayAdapter<String> adapter1=new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,data);
        mtv_content.setAdapter(adapter);
        mtv_content.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());


    }

}

ok,完成,欢迎大家指出我的错误,感谢。

发布了5 篇原创文章 · 获赞 0 · 访问量 223

猜你喜欢

转载自blog.csdn.net/xyj_1_2/article/details/101299545