Android自學筆記之 MultiAutoTextView的功能、特殊屬性、用法(與AutoTextView的區別和近似)

一、MultiAutoCompleteTextView  介紹
1.功能:可支持選擇多個值(在多次輸入的情況下),分別用分隔符分開,,並且在每個值的選中的時候再次輸入時會自動去匹配,可用在發短信、發郵件時選擇聯繫人這種類型當中。
2.屬性:android:completionThreshold= “2”

3.設置分隔符:mtxt.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());


二、AutoCompleteTextView  介紹:

  1.功能:只是單一動態匹配

  2。屬性android:completionThreshold="n" -- 輸入n個字符開始匹配(跟MultiAutoCompleteTextView一樣)

三、實現步驟:

1.AutoCompleteTextView:

第一步:初始化控件
第二步:需要一個適配器,作用是適配當前文本框輸入的內容。
利用簡單的適配器ArrayAdapter
第三步:初始化數據源===去匹配文本框中輸入的內容。
eg:private string[]={ , , };
利用泛型
ArrayAdapter<String> adapter = new ArrayAdapter<String>( , , );
第四步:將Adapter與當前AutoCompleteTextView匹配。
acTextView.steAdapter(adapter);

2.MultiAutoCompleteTextView

/**
* 1 初始化控件
* 2 需要一個適配器
* 3 初始化數據源
* 4 與當前的Multi
AutoCompleteTextView綁定

* 5 設置分隔符
* macTestView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());//以逗號分隔
*/



四、在代碼中實現

 1.在activity_main.xml中加入AutoCompleteTextView及MultiAutoCompleteTextView

<span style="font-family:KaiTi_GB2312;font-size:18px;"> <AutoCompleteTextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:completionThreshold="3"
        android:hint="請輸入你要搜素的關鍵字"
        android:id="@+id/autoCompleteTextView"
        android:layout_below="@+id/textView"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        />

    <MultiAutoCompleteTextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="請輸入你要搜索的關鍵字"
        android:id="@+id/multiAutoCompleteTextView"
        android:layout_below="@+id/autoCompleteTextView"
        android:completionThreshold="2"
        /></span>

2.在ManiActivity.class中具體實現:

package com.example.administrator.paoma;

import android.support.v7.app.ActionBarActivity;
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 ActionBarActivity {
    String[] guan = new String[]{"beijing1","beijing2","bejing",
            "shanghai1","shanghai2","shnghai3"};//創建一個適配器,供後面調用
    private AutoCompleteTextView atCo;
    private MultiAutoCompleteTextView macTextView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        /*
         *
         */
        atCo = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView);//初始化AutoCompleteTextView
        ArrayAdapter<String> adapter =  new ArrayAdapter<String>(this,
                android.R.layout.simple_list_item_1,guan);//初始化適配器
        atCo.setAdapter(adapter);  //與當前的AutoCompleteTextView綁定


        macTextView = (MultiAutoCompleteTextView)
                findViewById(R.id.multiAutoCompleteTextView);//初始化MultiAutoCompleteTextView
        macTextView.setAdapter(adapter);//與當前的MultiAutoCompleteTextView綁定
        macTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());//以逗號爲分隔符

    }



}


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