android基礎一之AutoCompleteTextView和MultiAutoCompleteTextView

//activity_main.xml
<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:orientation="vertical"
    tools:context="com.vincentlin.completetextview.MainActivity" >

    <AutoCompleteTextView
        android:id="@+id/autoCompleteTextView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:completionThreshold="2"
        android:hint="@string/autoCompleteTextView" >
        <requestFocus />
    </AutoCompleteTextView>
    <MultiAutoCompleteTextView
        android:id="@+id/multiAutoCompleteTextView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/multiAutoCompleteTextView" />
</LinearLayout>
//strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">CompleteTextView</string>
    <string name="hello_world">Hello world!</string>
    <string name="action_settings">Settings</string>
    <string name="autoCompleteTextView">請輸入你要搜索的關鍵字</string>
    <string name="multiAutoCompleteTextView">請輸入你的收件</string>
</resources>
//MainActivity.java
package com.vincentlin.completetextview;
import android.R.anim;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.MultiAutoCompleteTextView;
public class MainActivity extends Activity {
 private AutoCompleteTextView acTextView;
 private MultiAutoCompleteTextView muTextView;
 private String[] res = {"guangzhou1","guangzhou2","guangzhou3","nanjing1","shanghai1"};
 
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  
  /*
   * 第一步:初始化控件
   * 第二步:需要一個適配器
   * 第三步:初始化數據源--將數據源匹配文本框輸入的內容
   * 第四步:將adapter與當前AutoCompleteTextView綁定
   */
  acTextView = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1);
  ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, res);
  acTextView.setAdapter(adapter);  
  
  /*
   * 可支持選擇多個值,分別用分隔符分開,自動匹配,可用於發信息或發郵件時選擇聯繫人這種類型
   * 第一步:初始化控件
   * 第二步:需要一個適配器
   * 第三步:初始化數據源--將數據源匹配文本框輸入的內容
   * 第四步:將adapter與當前AutoCompleteTextView綁定
   * 第五步:設置分隔符
   */
  muTextView = (MultiAutoCompleteTextView) findViewById(R.id.multiAutoCompleteTextView1);
  muTextView.setAdapter(adapter);
  //設置以逗號爲分隔符的結束符號
  muTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
 }
}
//效果圖

wKioL1S2FnGzeR0uAAC6iLueSMg538.jpg

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章