編輯:Android資訊
AutoCompleteTextView的功能類似於百度或者Google在搜索欄輸入信息的時候,彈出的與輸入信息接近的提示信息。當然這裡要要用到一些適配器
在Android中提供了兩智能輸入框,它們是MultiAutoCompleteTextView、AutoCompleteTextView。它們的功能大致一樣,它和AutoCompleteTextView的區別就是MultiAutoCompleteTextView可以在輸入框中一直增加新的選取值。編寫方式也有所不同,在進行setAdapter之後還需要調用setTokenizer() 。下面詳細介紹一下。
1.簡介
一個可編輯的文本視圖,當用戶輸入信息後彈出提示。提示列表顯示在一個下拉菜單中,用戶可以從中選擇一項,以完成輸入。提示列表是從一個數據適配器獲取的數據。
2.重要方法
clearListSelection():清除選中的列表項
dismissDropDown():如果存在關閉下拉菜單
getAdapter():獲取適配器
3.創建須知
(1)布局文件
<AutoCompleteTextView android:id="@+id/edit" android:layout_width="match_parent" android:layout_height="wrap_content" />
(2)程序
實例化適配器
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line, strs);
設置適配器
edit.setAdapter(adapter);
1.簡介
繼承自AutoCompleteTextView,延長AutoCompleteTextView的長度,你必須要提供一個MultiAutoCompleteTextView.Tokenizer來區分不同的子串
2.重要方法
enoughToFilter():當文本長度超過阈值時過濾
performValidation():代替驗證整個文本,這個子類方法驗證每個單獨的文字標記
setTokenizer(MultiAutoCompleteTextView.Tokenizer t);用戶正在輸入時,tokenizer設置將用於確定文本相關范圍內
3.使用須知
(1)布局文件
<MultiAutoCompleteTextView android:id="@+id/edit1" android:layout_width="match_parent" android:layout_height="wrap_content" />
(2)程序
實例化適配器
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line, strs);
設置適配器
edit.setAdapter(adapter);
確定范圍
edit1.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer())
下面是個例子
AutoCommitTest.java
package org.hualang.auto; import android.app.Activity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; import android.widget.MultiAutoCompleteTextView; public class AutoCommitTest extends Activity { /** Called when the activity is first created. */ private static final String[] autoString=new String[]{"welcome","well", "weatch","weexeview","werap"}; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //關聯關鍵字 ArrayAdapter<String> adapter=new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, autoString); AutoCompleteTextView autocomplete=(AutoCompleteTextView)findViewById(R.id.auto); autocomplete.setAdapter(adapter); MultiAutoCompleteTextView multi=(MultiAutoCompleteTextView) findViewById(R.id.multi); //將adapter添加到AutoCompleteTextView中 multi.setAdapter(adapter); multi.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); } }
main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="自動提示功能演示" /> <AutoCompleteTextView android:id="@+id/auto" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <MultiAutoCompleteTextView android:id="@+id/multi" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
運行結果如下:
android M 的名字官方剛發布不久,最終正式版即將來臨! android在不斷發展,最近的更新 M 非常不同,一些主要的變化例如運行時權限將有顛覆性影響。驚
1. 緩存 名稱 描述 DiskLruCache Java實現基於LRU的磁盤緩存 2.圖片加載 名稱 描述 Android
除了Android系統自帶的Button按鈕以外,還提供了帶圖標的按鈕ImageButton 要制作帶圖標的按鈕,首先要在布局文件中定義ImageButton,然
引言 夜間模式其實屬於多主題切換的一種,不過是最麻煩的一種。因為在夜間模式下不僅要切換主色調,次要色調等等,還要覆蓋一些特殊的顏色,因為在夜間模式下總不能什麼都是