2009-11-25 83 views
0

這是我的場景:我有一個數據庫,其中2列對我來說很有趣。我現在創建了一個autocompletetextview,其中適配器通過SQL創建一列的條目。Android自動完成文本視圖和可編輯微調

到目前爲止...很好,但我真正想要的是,如果用戶鍵入某物。進入autocompletefield我注意到這一點,並獲取文本。通過SQL我現在想要得到everey條目第2列其中列1的值包含在輸入的文本中。此列表應顯示在適配器中。換句話說,我通過sql自己過濾數據,但我希望它們在適配器中顯示。 問題是,該適配器只顯示以自動填充字段中的文本開頭的條目,但我希望隨時顯示適配器,因爲已經開始了:我自己過濾數據我只想讓適配器顯示它們。 任何想法如何解決這個問題? AutocompleteTextView是正確的項目嗎?

我也想過使用一個簡單的微調器......但是當使用微調器時有兩個主要問題。首先我必須讓他可編輯。第二我需要一個下拉菜單而不是「彈出」。 ...

解決此問題的另一個想法是爲自動填充字段編寫一個自己的過濾器......但我從來沒有下過這麼遠,我也找不到任何例子在互聯網上這樣做。

感謝您的幫助

回答

1

我改變了微調的一個ArrayAdapter方法我得到了我的自定義微調。 只是改變了該方法的參數一樣

Spinner spinner = (Spinner) findViewById(R.id.Spinner01); 
ArrayAdapter<CharSequence> adapter=ArrayAdapter.createFromResource(This,R.array.statename,R.layout.mylayout); 
spinner.setAdapter(adp); 

其中mylayout文件包含

<EditText 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:id="@+id/spinnerTarget" 
android:textColor="#FF8B1500" 
android:gravity="center" 
> 
1

您可以使用autocompleteTextView並設置它的適配器可以SQLite的或字符串數​​組的值,如下圖所示:

String values[]= {"Orange","Apple","Pineapple"}; 
AutoCompleteTextView text=(AutoCompleteTextView)findViewById(R.id.a1); 
text.setAdapter(new ArrayAdapter<String>  
    (this,android.R.layout.simple_dropdown_item_1line,values)); 

關於它的更多信息請訪問developers site

相關問題