所示的圖片中輸入as前兩個字母,後面就會提示相應的結果提示,這在apidemo中也有類似例子的提供,網上傳的也基本都是那個例子。
這個功能用處不大,但是在於新意不錯,說專業一點就是使用者體驗不錯。
每個事情都有缺點,這個的壞處就是必須輸入兩個以上的字元,兩個!
實現此功能的是EditText的子類控制項AutoCompleteTextView。既是子類,所以有著全部父類的屬性,即用法與EditText相同。(MultiAutoCompleteTextView這個的屬性更加強大,有興趣的朋友可以繼續研究)。
來看看功能實現代碼
public class Enter extends Activity { String[] result_about_a = {"andexplorer","astro"}; private AutoCompleteTextView field_text; // 定義AutoCompleteTextView對象public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); field_text = (AutoCompleteTextView) findViewById(R.id.et1); //自動提示 ArrayAdapter<String> adapt = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, result_about_a); field_text.setAdapter(adapt); } }
xml布局部分
<AutoCompleteTextView android:id="@+id/et1" android:hint="軟體,遊戲,盡在96商城" // 此處為自己定義的屬性,可不要。提示資訊 android:layout_width="220px" android:layout_height="50px" android:layout_marginLeft="30px" >
但是,此方法的一個最大不好處就是上面的數組自訂。這個簡直就是愚蠢的做法,應該可以在建立一個資料庫用來存放一些被搜尋的內容,然後等用到的時候再用Adapter來相應的對應上,但是自己還沒那樣做。還是惰性太大啊。希望有此經驗的朋友有機會可以給我一些建議。共同學習。共同進步,