problem-Handler mit Nachrichten in android

Bin ich mit dem Handler in meiner Anwendung in einem Fenster durch klicken auf eine Schaltfläche einen Satz von codes aufgerufen werden.Für den Aufruf der code-ich bin das senden von Nachrichten an die Prozedur und überschreiben die Nachrichten verarbeiten-Methode. Erste mal, wenn Sie auf den button handler funktioniert perfekt und der code ausgeführt wird. Wenn ich klickte den Knopf für das zweite mal, dass ich bin immer die Ausnahme.

05-03 09:45:25.703: ERROR/AndroidRuntime(1971): FATAL EXCEPTION: main
05-03 09:45:25.703: ERROR/AndroidRuntime(1971): android.util.AndroidRuntimeException: { what=1 when=7381217 obj=android.app.AlertDialog@462b5c58 } This message is already in use.
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.MessageQueue.enqueueMessage(MessageQueue.java:171)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.Handler.sendMessageAtTime(Handler.java:457)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.Handler.sendMessageDelayed(Handler.java:430)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.Handler.sendMessage(Handler.java:367)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at com.mysnob.utils.MessageDialog$8.onClick(MessageDialog.java:93)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:158)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.os.Looper.loop(Looper.java:144)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at android.app.ActivityThread.main(ActivityThread.java:4937)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at java.lang.reflect.Method.invokeNative(Native Method)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at java.lang.reflect.Method.invoke(Method.java:521)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
05-03 09:45:25.703: ERROR/AndroidRuntime(1971):     at dalvik.system.NativeStart.main(Native Method)

Kann ich verstehen, dass beim senden die gleiche Meldung wieder bekomme ich diese exception. Aber ich weiß nicht, wie dieses problem zu lösen, wenn jemand weiß, bitte helfen Sie mir.

Dank,

Rajapandian

Rufen Sie removeMessages(was) in dem handler und Message.obtainMessage(was) erhalten Sie die Nachricht?
Ich erhalte die Nachricht über Nachricht.obtainMessage(), ich habe in der Nachricht.obtainMessage(was) aber ich habe nicht gefunden eine Methode wie diese.
Von den docs obtainMessage(int was) wie obtainMessage(), außer dass es bestimmt auch die, welche Mitglied der Nachricht. Link: developer.android.com/reference/android/os/...
mögliche Duplikate von Android-Handler Message-und ListView
removeMessages(was) ist nicht notwendig, mit obtainMessage(was)

InformationsquelleAutor Rajapandian | 2011-05-03

Schreibe einen Kommentar