91 votes

Exception déclenchée lors du rendu: impossible de localiser le mode 0

Après la mise à jour BuildTools à la version 25.0.0.

compileSdkVersion 25
buildToolsVersion "25"

J'ai un problème avec android aperçu de la mise en. Maintenant, c'afficher le message d'erreur:

Exception levée lors du rendu: Impossible de trouver le mode 0

enter image description here

J'ai essayé de Nettoyer Et Reconstruire projet, mais il ne fonctionne pas. Avant de mettre à jour tout ce qui était bon.

Je sais que je peux revenir à des versions précédentes de BuildTools, mais je veux savoir pourquoi il ne fonctionne pas sur la version 25.0.0?


Semble que c'est un problème avec RecyclerView

java.lang.IllegalStateException: Unable to locate mode 0
at android.view.DisplayInfo.findMode(DisplayInfo.java:458)
at android.view.DisplayInfo.getMode(DisplayInfo.java:445)
at android.view.Display.getRefreshRate(Display.java:648)
at android.support.v7.widget.RecyclerView.onAttachedToWindow(RecyclerView.java:2392)
at android.view.View.dispatchAttachedToWindow(View.java:15392)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2953)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.AttachInfo_Accessor.setAttachInfo(AttachInfo_Accessor.java:42)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:333)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:429)
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:389)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:548)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:533)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:966)
at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:533)
at com.android.tools.idea.rendering.RenderTask.lambda$inflate$53(RenderTask.java:659)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

111voto

Furqan Points 1397

Ce problème a été résolu, mettez à jour la bibliothèque de support pour

 compile 'com.android.support:recyclerview-v7:25.0.1'
compile 'com.android.support:appcompat-v7:25.0.1'
compile 'com.android.support:design:25.0.1'
 

62voto

XcodeNOOB Points 1045

C'est un bogue ennuyeux de la version 25 .. Une solution temporaire consiste à rétrograder votre projet,

  compile 'com.android.support:appcompat-v7:24.2.1'
 compile 'com.android.support:design:24.2.1'
 compile 'com.android.support:recyclerview-v7:24.2.1'
 

18voto

Reyske Points 900

Une autre solution temporaire consiste à remplacer <android.support.v7.widget.RecyclerView par <RecyclerView afin que vous puissiez voir la vue rendue. Lors de la compilation, remettez-le en <android.support.v7.widget.RecyclerView

7voto

IntelliJ Amiya Points 672

Le Android Support Library fournit l'arrière-compatible utilitaire fonctions. Les applications peuvent utiliser ces fonctions utilitaires pour fournir une approprié de l'expérience utilisateur à travers un large éventail de système Android les versions.

C'est un bug problème et devrait être corrigé dans la future Version de l'appui-de la bibliothèque de conception.

Vous devez rétrograder votre version pour des Solutions Temporaires .

compile 'com.android.support:appcompat-v7:25.0.1'
compile 'com.android.support:design:v7:25.0.1' 
compile 'com.android.support:recyclerview-v7:25.0.1' 

6voto

Zohab Ali Points 1028

Pour voir l'aperçu, j'utilise cette astuce ..... ajoutez app:layoutManager="0" pour le recyclerView dans une mise en page XML

Mais il lève InflateException au moment de l'exécution. Supprimez donc cette propriété du fichier de présentation XML avant d'exécuter l'application!

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X