您可以在autocompletetextview設置addTextChangeListener這樣
myAutoComplete.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
readSearchTerm(s.getText().toString());
}
});
private List<String> readSearchTerm(String userInput) {
// TODO Auto-generated method stub
List<String> searchItemList = new ArrayList<String>();
try {
for (int i = 0; i < myObjectList.size(); i++) {
myObjectList.get(i).objectName = myObjectList.get(i).objectName
.replace(" ", "-");
String itemArray[] = myObjectList.get(i).objectName.split("-");
for (int j = 0; j < itemArray.length; j++) {
Log.i("mini", "Item:" + itemArray[j]);
if (itemArray[j].contains(userInput)) {
searchItemList.add(myObjectList.get(i).objectName);
break;
}
}
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return searchItemList;
}
只是根據你的code.You改變閱讀搜索詞方法將得到過濾列表或項目匹配的項目
我已經有一個列表。當用戶鍵入一個字符時,我從服務器獲取匹配的項目並將其顯示爲下拉菜單。所以在任何時候,我已經有一個與當前輸入的文本匹配的項目列表。它只是如果用戶沒有通過點擊從列表中選擇任何項目,所選項目在我的代碼中不可用。儘管我可以從輸入的文本中構建它,但我一直在尋找一種更乾淨的方法 – Jatin 2014-09-29 05:33:07