0

タブを使用しており、タブを選択した後、カスタムリストビューにコンテンツを表示し、リストをスクロールして、リストの任意の項目を選択すると、以下のエラーが発生します

java.lang.IllegalStateException: アダプターの内容が変更されましたが、ListView は通知を受け取りませんでした。アダプターのコンテンツがバックグラウンド スレッドからではなく、UI スレッドからのみ変更されていることを確認してください。

問題を解決するには?

4

2 に答える 2

0

これは、実行されたlist.clear()などのデータセットが変更されたときに呼び出されました。

私の提案は、スレッドでこれを行い、一時リストを使用することです。ジョブが完了したら、adapter.notifyDataSetChanged()を呼び出します。

あなたに役立つことを願っています

于 2012-02-07T09:54:12.090 に答える
0

コレクションの変更がスレッドで行われている場合は、runOnUIThread メソッド内でコレクションを更新します。また、adapter.notifyDataSetChanged() メソッドを呼び出します。

于 2012-02-07T09:51:11.680 に答える