Closed h5rcode closed 9 years ago
The problem was apparently in AutoCompleteFilter. The method performFiltering (run in a background thread) was updating the content of the adapter (the attribute "mResult").
Now performFiltering does not update "mResult" anymore, it is set in method publishResults which is executed on the UI thread.
01-23 20:06:30.442 W/dalvikvm(27692): threadid=1: thread exiting with uncaught exception (group=0x4193cda0) 01-23 20:06:30.462 E/com.blackbooks(27692): Uncaught exception. 01-23 20:06:30.462 E/com.blackbooks(27692): java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. Make sure your adapter calls notifyDataSetChanged() when its content changes. [in ListView(-1, class android.widget.ListPopupWindow$DropDownListView) with Adapter(class com.blackbooks.adapters.AutoCompleteAdapter)] 01-23 20:06:30.462 E/com.blackbooks(27692): at android.widget.ListView.layoutChildren(ListView.java:1566) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.widget.AbsListView.onLayout(AbsListView.java:2564) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.View.layout(View.java:15749) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.ViewGroup.layout(ViewGroup.java:4880) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.widget.FrameLayout.layoutChildren(FrameLayout.java:453) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.widget.FrameLayout.onLayout(FrameLayout.java:388) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.View.layout(View.java:15749) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.ViewGroup.layout(ViewGroup.java:4880) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2358) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2071) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1256) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6635) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.Choreographer$CallbackRecord.run(Choreographer.java:813) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.Choreographer.doCallbacks(Choreographer.java:613) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.Choreographer.doFrame(Choreographer.java:583) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:799) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.os.Handler.handleCallback(Handler.java:733) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.os.Handler.dispatchMessage(Handler.java:95) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.os.Looper.loop(Looper.java:146) 01-23 20:06:30.462 E/com.blackbooks(27692): at android.app.ActivityThread.main(ActivityThread.java:5593) 01-23 20:06:30.462 E/com.blackbooks(27692): at java.lang.reflect.Method.invokeNative(Native Method) 01-23 20:06:30.462 E/com.blackbooks(27692): at java.lang.reflect.Method.invoke(Method.java:515) 01-23 20:06:30.462 E/com.blackbooks(27692): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283) 01-23 20:06:30.462 E/com.blackbooks(27692): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099) 01-23 20:06:30.462 E/com.blackbooks(27692): at dalvik.system.NativeStart.main(Native Method)