私はEditTextでOnTextChangeが発生したときにカーソルの選択を変更して連絡先リストをフィルタリングしようとしています。問題は、リストがそのまま、つまりフィルタごとに更新されないということです。私は間違って何をしていますか?私はそれが私のSQLクエリ(特にGLOBの部分)だと思う?WHERE条件でカーソルをフィルタリングする
digitsText.addTextChangedListener(new TextWatcher(){
public void onTextChanged(CharSequence s, int start, int before, int count){
filterText = digitsText.getText().toString();
WHERE_CONDITION = ContactsContract.Data.DATA1 + " GLOB '*" + filterText + "*'";
cursor = getContentResolver().query(URI, PROJECTION, WHERE_CONDITION, null, SORT_ORDER);
startManagingCursor(cursor);
setListAdapter(adapter);
}
});
を使用して
setListAdapter()
を呼び出しますよう、Cursor
古いです実際に何が起こっていないのかわかります。結果が得られませんか?エラーメッセージ? –ところで、ユーザー入力をフィルタリングされていないデータベースに移動させることは*不良*です。ボビー・テーブルを思い出して? –
申し訳ありませんが、忘れてしまった - リストはそのまま、つまりフィルタごとに更新されません。 DBの入力のヒントありがとう:)私は唯一の数字とクーペの特殊文字に入力を制限するので、そこに心配はありません。 – Phat7