Cursor Loader观察者已经注册了错误

时间:2013-07-01 12:23:54

标签: android android-cursorloader

我的应用中有AutoCompleteTextView,我正在使用CursorLoader加载数据。显然使用这种方法加载数据存在一些问题,因为我不时会收到这个错误:

07-01 11:17:49.209: E/AndroidRuntime(20758): java.lang.IllegalStateException: Observer
android.widget.CursorAdapter$ChangeObserver@422dd8b8 is already registered.

有没有人遇到过这种问题?

1 个答案:

答案 0 :(得分:2)

我似乎已经解决了这个问题。只有当我从AutoCompleteTextView的自动完成列表中执行项目点击时,才会发生此类崩溃(错误)。错误显然是内部错误,它与CursorAdapter的内部观察者有关,我曾用Adapter作为AutoCompleteTextView。现在,在每个项目点击,我执行以下操作:

    txtAutocomplete.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
                // ... your code here ...
                autocompleteContactsAdapter.changeCursor(null);
            }
        }
    });

现在我的应用程序没有崩溃。