NullPointerException: Intento de leer del campo 'int android.view.View.mViewFlags'
Mi aplicación estaba funcionando bien, y luego incluí la biblioteca de diseño de soporte en el build.gradle
compile 'com.android.support:design:23.2.1'
Android Studio pidió descargar más componentes y después de eso empecé a ver demasiados de estos bloqueos cuando la navegación b / w diferentes fragmentos
- Cómo agregar un marcador pin en la vista de la imagen en android
- Agregar vista al grupo de vistas xml existente en el código
- Problema en un grupo de vistas personalizado al actualizar ListViews
- Activity.addContentView (Vista) == ViewGroup.addContentView (Ver)?
- ¿Cuál es la estructura de diseño típica de una actividad de configuración de Android?
FATAL EXCEPTION: main Process: com.presdo.match.matchtemplate, PID: 23339 java.lang.NullPointerException: Attempt to read from field 'int android.view.View.mViewFlags' on a null object reference at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3197) at android.view.View.draw(View.java:15234) at android.widget.FrameLayout.draw(FrameLayout.java:598) at android.view.View.updateDisplayListIfDirty(View.java:14167) at android.view.View.getDisplayList(View.java:14189) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3389) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3368) at android.view.View.updateDisplayListIfDirty(View.java:14127) at android.view.View.getDisplayList(View.java:14189) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3389) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3368) at android.view.View.updateDisplayListIfDirty(View.java:14127) at android.view.View.getDisplayList(View.java:14189) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3389) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3368) at android.view.View.updateDisplayListIfDirty(View.java:14127) at android.view.View.getDisplayList(View.java:14189) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3389) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3368) at android.view.View.updateDisplayListIfDirty(View.java:14127) at android.view.View.getDisplayList(View.java:14189) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3389) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3368) at android.view.View.updateDisplayListIfDirty(View.java:14127) at android.view.View.getDisplayList(View.java:14189) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3389) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3368) at android.view.View.updateDisplayListIfDirty(View.java:14127) at android.view.View.getDisplayList(View.java:14189) at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3389) at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3368) at android.view.View.updateDisplayListIfDirty(View.java:14127) at android.view.View.getDisplayList(View.java:14189) at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:273) at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:279) at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:318) at android.view.ViewRootImpl.draw(ViewRootImpl.java:2530) at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2352) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1982) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1061) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5885) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767) at android.view.Choreographer.doCallbacks(Choreographer.java:580) at android.view.Choreographer.doFrame(Choreographer.java:550) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5254) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Este es mi build.gradle
compile 'com.android.support:appcompat-v7:23.2.1' compile 'com.android.support:recyclerview-v7:+' compile 'com.android.support:cardview-v7:23.+' compile 'com.android.support:support-v4:23.0.0' compile 'com.android.support:percent:23.1.1' compile 'com.android.support:multidex:1.0.0' compile 'com.android.support:palette-v7:23.1.0'
Ya he mirado esto y todavía no estoy seguro si tiene algo que ver con mi código.
Ahora, incluso si elimino la biblioteca de soporte de diseño de google, veo los bloqueos y no puedo predecir cuándo ocurren, ya que no hay referencia a la base de código de mi proyecto en el stacktrace.
Cualquier ayuda es apreciada.
ACTUALIZAR
Hice cambios en el Gradle para hacer compatibles las versiones de la biblioteca de soporte, y ya no veo los fallos. Aquí hay un fragmento
ext { supportLibVersion = '23.2.1' } dependencies { compile "com.android.support:appcompat-v7:${supportLibVersion}" compile "com.android.support:recyclerview-v7:${supportLibVersion}" compile "com.android.support:cardview-v7:${supportLibVersion}" compile "com.android.support:support-v4:${supportLibVersion}" compile "com.android.support:percent:${supportLibVersion}" compile "com.android.support:palette-v7:${supportLibVersion}" compile "com.android.support:design:${supportLibVersion}" ... }
- Android StackOverflowError en ViewGroup.resetResolvedTextDirection al agregar ListView a LinearLayout
- Generando un LayoutParams basado en el tipo de padre
- Evento de inflado de acabado de ViewGroup
- Implementar Drag & Drop en pan de jengibre
- Programe agregar fragmentos a viewgroup
- Android ViewGroup crash: Intenta leer desde el campo 'int android.view.View.mViewFlags' en una referencia de objeto nulo
- Escala de diseño relativo personalizado?
- Android - efecto de deformación de imagen
Generalmente no es una buena idea mezclar versiones de diferentes bibliotecas de soporte, ya que tienen interdependencias que pueden no funcionar en todas las versiones.
Intentaría actualizarlos todos a 23.2.1, en vez de mezclar 23.0, 23.1 y 23.2
Es (de nuevo) un tema de animación. Probablemente tenga algunas animaciones personalizadas configuradas con
fragmentTransaction.setCustomAnimations();
Eliminarlos y funciona de nuevo. Enhorabuena, ahora tienes transiciones de fragmentos como hace 5 años.
Editar: una manera mejor es restaurar su antiguo repositorio, mediante la descarga
http://dl.google.com/android/repository/android_m2repository_r26.zip
Y reemplazar todo en
/Users/.../Library/Android/sdk/extras/android/m2repository
Tomó desde aquí .
- Cómo mantener la escucha de servlets de App Engine en Firebase
- ¿Cuál es la mejor manera de definir TAG constante en Kotlin?