7

Ich bekomme NullPointerException in onTouchEvent von CoordinatorLayout.CoordinatorLayout NullPointerException in onTouchEvent

Ich verwende DrawerLayout mit CollapsingToolbarLayout von Android-Support AppCompat v23.0.0-Bibliothek.

Meine Beobachtung ist Crash passieren zufällig beim Scrollen CollapsingToolbarLayout oder klicken Sie auf Schubladenelemente.

Gibt es jemanden mit diesem Problem konfrontiert? irgendwelche Arbeit um diese Ausnahme zu vermeiden?

Logcat:

08-22 15:16:34.657: E/AndroidRuntime(27596): java.lang.NullPointerException: Attempt to invoke virtual method 'float android.view.MotionEvent.getX()' on a null object reference 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.view.View.onTouchEvent(View.java:9321) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.support.design.widget.CoordinatorLayout.onTouchEvent(CoordinatorLayout.java:449) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.view.View.dispatchTouchEvent(View.java:8388) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2398) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2158) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.support.v4.widget.DrawerLayout.cancelChildViewTouch(DrawerLayout.java:1491) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.support.v4.widget.DrawerLayout$ViewDragCallback.peekDrawer(DrawerLayout.java:1739) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.support.v4.widget.DrawerLayout$ViewDragCallback.access$000(DrawerLayout.java:1624) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.support.v4.widget.DrawerLayout$ViewDragCallback$1.run(DrawerLayout.java:1630) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.os.Handler.handleCallback(Handler.java:739) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.os.Handler.dispatchMessage(Handler.java:95) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.os.Looper.loop(Looper.java:135) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at android.app.ActivityThread.main(ActivityThread.java:5221) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at java.lang.reflect.Method.invoke(Native Method) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at java.lang.reflect.Method.invoke(Method.java:372) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:898) 
08-22 15:16:34.657: E/AndroidRuntime(27596): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:693) 
08-22 15:16:35.965: I/Process(27596): Sending signal. PID: 27596 SIG: 9 

Antwort

9

Nach der Verbindung von Kevin Salazar gestellt, wird der Fehler behoben, wenn Sie Ihre Support-Bibliothek auf Version aktualisieren 23.0.1

0

Als David Chu richtig erklärt, ist das Problem 23.0 in Versionen behoben .1 und aufwärts. Auch in meinem Fall schien Kevin Salazars Vorschlag, das dispatchTouchEvent zu versuchen, die Anzahl der Abstürze zu verringern (könnte durch Wahrnehmungsverzerrungen verursacht werden), aber sie nicht vollständig zu vermeiden.

Ein wichtiger Aspekt ist, dass der Absturz nicht so zufällig ist, wie es zuerst erscheint. In meinem Fall passiert es, wenn Sie die Schublade LANGSAM gleiten lassen. Schnelles Öffnen und Schließen der Schublade führt nicht zum Absturz. Dies war hilfreich für mich, um den Fehler zu reproduzieren.