2

ArrayAdapterに支えられたAndroidListViewがあります。ユーザーがリスト内のアイテムをクリックすると、そのアイテムは削除されます。これはすべて正常に機能しているように見えます。アイテムがなくなるまで、各アイテムをクリックできます。

ただし、テキストフィルタリングが発生すると、すべてがうまくいきません。リストが一度フィルタリングされると、そのフィルタがクリアされた場合でも、アダプタでのそれ以降のすべてのremove(Object)の呼び出しは、表示されているリストからアイテムを削除できません。アイテムを削除する前にListView.clearTextFilter()を呼び出し、アイテムを削除した後に呼び出してみましたが、すべてを呼び出すのではありません。違いはありません。

ArrayAdapter.javaのソースを調べましたが、フィルタリングが設定されると、アダプターは1つのコレクションを使用してクエリに応答しますが、別のコレクションを更新するようです。私はそれをその振る舞いに戻すための明白な方法を見ることができません。これはバグですか、それとも何かが足りませんか?

4

1 に答える 1

1

これはバグのようです。ここで報告しました。

于 2010-08-09T01:33:08.457 に答える