工作,我有一個EditText,我用它來讓人們搜索數據庫。現在,我擁有了一切運行良好的功能,但是,當有人向EditText輸入內容時,我的ListView沒有按照我希望的方式更新。setOnKeyListener不EditText上
我希望它這樣,每當有人進入任何東西到它的EditText更新ListView控件。但是,當我輸入文本時,似乎沒有任何事情發生。
繼承人我的代碼:
@Override
protected void onResume() {
searchText = (EditText)findViewById(R.id.search_text);
ImageView searchView = (ImageView)findViewById(R.id.button_exercises_search);
ImageView searchDoneView = (ImageView)findViewById(R.id.button_exercises_search_done);
if (isSearching) {
searchView.setVisibility(View.GONE);
searchDoneView.setVisibility(View.VISIBLE);
searchText.setVisibility(View.VISIBLE);
}
else {
searchView.setVisibility(View.VISIBLE);
searchDoneView.setVisibility(View.GONE);
searchText.setVisibility(View.GONE);
}
searchText.setOnKeyListener(new OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
String query = searchText.getText().toString();
if (query.length() > 0) {
cursor = datasource.fetchFilterExercises(dayDataID, query);
}
else {
cursor = datasource.fetchAddExercises(dayDataID);
}
dataAdapter.changeCursor(cursor);
return false;
}
});
super.onResume();
}
2個按鈕是正義的,單擊時,顯示/隱藏EditText上搜索圖標。我知道數據源正確地抓取了我想要的數據等。當我將文本輸入到EditText searchText
中時,似乎沒有任何反應。我應該將其移入onCreate()嗎?要麼?
是的,是使用了錯誤的功能。謝謝。 – scarhand
不客氣! – Evos
你怎麼知道哪個鍵被按下,即如果yoiu按空格,刪除等? – jonney