Android基礎入門教程——2.4.11 AutoCompleteTextView(自動完成文字框)的基本使用

來源:互聯網
上載者:User

Android基礎入門教程——2.4.11 AutoCompleteTextView(自動完成文字框)的基本使用
 1.相關屬性:

android:completionHint:設定下拉式功能表中的提示標題 android:completionHintView:定義提示視圖中顯示下拉式功能表 android:completionThreshold:指定使用者至少輸入多少個字元才會顯示提示 android:dropDownAnchor:設定下拉式功能表的定位”錨點”組件,如果沒有指定改屬性,
將使用該TextView作為定位”錨點”組件 android:dropDownHeight:設定下拉式功能表的高度 android:dropDownWidth:設定下拉式功能表的寬度 android:dropDownHorizontalOffset:指定下拉式功能表與文本之間的水平間距 android:dropDownVerticalOffset:指定下拉式功能表與文本之間的豎直間距 android:dropDownSelector:設定下拉式功能表點擊效果 android:popupBackground:設定下拉式功能表的背景

另外其實還有個MultiAutoCompleteTextView(多提示項的自動完成文字框)
和這個AutoCompleteTextView作用差不多,屬性也一樣,具體區別在哪裡,
我們在下面的代碼中來體驗~另外這兩個都是全詞匹配的,比如,小豬豬:
你輸入小->會提示小豬豬,但是輸入豬豬->卻不會提示小豬豬!

2.程式碼範例:

運行:

實現代碼:

這裡的話就不自訂布局了,直接用ArrayAdapter來實現吧!

布局檔案:activity_main.xml:

        

MainActivity.java:

public class MainActivity extends AppCompatActivity {    private AutoCompleteTextView atv_content;    private MultiAutoCompleteTextView matv_content;    private static final String[] data = new String[]{            小豬豬, 小狗狗, 小雞雞, 小貓貓, 小咪咪    };    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        atv_content = (AutoCompleteTextView) findViewById(R.id.atv_content);        matv_content = (MultiAutoCompleteTextView) findViewById(R.id.matv_content);        ArrayAdapter adapter = new ArrayAdapter(MainActivity.                this, android.R.layout.simple_dropdown_item_1line, data);        atv_content.setAdapter(adapter);        ArrayAdapter adapter2 = new ArrayAdapter(getApplicationContext(), android.R.layout.simple_dropdown_item_1line, data);        matv_content.setAdapter(adapter);        matv_content.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());    }}

部分程式碼分析:

android:completionThreshold=”1”:這裡我們設定了輸入一個字就顯示提示 android:completionHint=”請輸入搜尋內容”:這是框框底部顯示的文字,如果覺得醜
可以android:completionHintView設定一個View! android:dropDownHorizontalOffset=”5dp”:設定了水平邊距為5dp matv_content.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
setTokenizer是為其設定分隔字元
 本節小結:

本節給大家介紹了AutoCompleteTextView(自動完成文字框),非常簡單~
大家可根據實際開發需求自行拓展~好的,就說這麼多,謝謝~

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.