Android控制元件之AutoCompleteTextView提示輸入
阿新 • • 發佈:2018-12-03
效果圖
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()); } }