Récemment, j'ai changé mon sdk de 25 à 26 dans mon application dans le studio Android, je reçois cette erreur étrange dans tous mes fichiers xml. Pour le moment, l'erreur n'affecte pas mon application de quelque manière que ce soit que je puisse voir, mais il est ennuyeux de voir chaque fois que je dois modifier ou modifier quelque chose dans le fichier XML ... .. L'erreur ici:
les classes suivantes n'ont pas pu être instanciées - Android.support.v7.widget.AppCompatTextView
Java.lang.NullPointerException
at Android.content.res.Resources_Delegate.getValue(Resources_Delegate.Java:788)
at Android.content.res.Resources.getValue(Resources.Java:1286)
at Android.support.v4.content.res.ResourcesCompat.loadFont(ResourcesCompat.Java:212)
at Android.support.v4.content.res.ResourcesCompat.getFont(ResourcesCompat.Java:206)
at Android.support.v7.widget.TintTypedArray.getFont(TintTypedArray.Java:119)
at Android.support.v7.widget.AppCompatTextHelper.updateTypefaceAndStyle(AppCompatTextHelper.Java:208)
at Android.support.v7.widget.AppCompatTextHelper.loadFromAttributes(AppCompatTextHelper.Java:152)
at Android.support.v7.widget.AppCompatTextHelperV17.loadFromAttributes(AppCompatTextHelperV17.Java:38)
at Android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.Java:81)
at Android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.Java:71)
at Sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at Sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.Java:62)
at Sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.Java:45)
at Java.lang.reflect.Constructor.newInstance(Constructor.Java:423)
at org.jetbrains.Android.uipreview.ViewLoader.createNewInstance(ViewLoader.Java:475)
at org.jetbrains.Android.uipreview.ViewLoader.loadClass(ViewLoader.Java:250)
at org.jetbrains.Android.uipreview.ViewLoader.loadClass(ViewLoader.Java:213)
at com.Android.tools.idea.rendering.LayoutlibCallbackImpl.loadClass(LayoutlibCallbackImpl.Java:193)
at Android.view.BridgeInflater.loadCustomView(BridgeInflater.Java:333)
at Android.view.BridgeInflater.onCreateView(BridgeInflater.Java:152)
at Android.view.LayoutInflater.onCreateView(LayoutInflater.Java:717)
at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:785)
at Android.view.BridgeInflater.createViewFromTag(BridgeInflater.Java:222)
at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:727)
at Android.view.LayoutInflater.rInflate_Original(LayoutInflater.Java:858)
at Android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.Java:70)
at Android.view.LayoutInflater.rInflate(LayoutInflater.Java:834)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:492)
at com.Android.layoutlib.bridge.bars.CustomBar.<init>(CustomBar.Java:95)
at com.Android.layoutlib.bridge.bars.StatusBar.<init>(StatusBar.Java:67)
at com.Android.layoutlib.bridge.impl.Layout.createStatusBar(Layout.Java:224)
at com.Android.layoutlib.bridge.impl.Layout.<init>(Layout.Java:146)
at com.Android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.Java:301)
at com.Android.layoutlib.bridge.Bridge.createSession(Bridge.Java:429)
at com.Android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.Java:368)
at com.Android.tools.idea.rendering.RenderTask$2.compute(RenderTask.Java:567)
at com.Android.tools.idea.rendering.RenderTask$2.compute(RenderTask.Java:549)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.Java:863)
at com.Android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.Java:549)
at com.Android.tools.idea.rendering.RenderTask.lambda$inflate$1(RenderTask.Java:680)
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)
Et mon grade:
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 26
buildToolsVersion "26.0.1"
defaultConfig {
applicationId "com.al285790.time2cook"
minSdkVersion 15
targetSdkVersion 26
multiDexEnabled true
versionCode 1
versionName "1.0"
testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.Android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.Android.support', module: 'support-annotations'
})
compile 'com.Android.support:appcompat-v7:26.0.1'
compile 'com.Android.support:palette-v7:26.0.1'
compile 'com.Android.support:design:26.0.1'
compile 'com.google.firebase:firebase-database:11.0.2'
compile 'com.google.firebase:firebase-core:9.6.1'
compile 'com.google.firebase:firebase-storage:11.0.2'
compile 'com.google.firebase:firebase-auth:11.0.2'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.firebaseui:firebase-ui-storage:1.2.0'
compile 'com.Android.support.constraint:constraint-layout:1.0.2'
compile('com.mikepenz:materialdrawer:5.9.5@aar') {
transitive = true
}
testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'
EDIT: Ajout d'une partie de mon code XML
<?xml version="1.0" encoding="utf-8"?>
<Android.support.design.widget.CoordinatorLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:layout_width="match_parent"
Android:layout_height="match_parent">
<Android.support.design.widget.AppBarLayout
Android:id="@+id/appbar"
Android:layout_width="match_parent"
Android:layout_height="wrap_content">
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:layout_weight="1"></Android.support.v7.widget.Toolbar>
</Android.support.design.widget.AppBarLayout>
<Android.support.v4.widget.NestedScrollView
Android:layout_width="match_parent"
Android:layout_height="match_parent"
app:layout_behavior="Android.support.design.widget.AppBarLayout$ScrollingViewBehavior">
<Android.support.v4.widget.NestedScrollView
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.al285790.time2cook.recipeInfo.RecipeInfoActivity">
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:orientation="vertical"
Android:scrollbars="none">
<TextView
Android:id="@+id/recipeNameText"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:textSize="24sp"
Android:textStyle="bold" />
<ImageView
Android:id="@+id/photoRecipe"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:scaleType="fitCenter"
app:srcCompat="@drawable/cho" />
<TextView
Android:id="@+id/textView10"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:text="Dificulty"
Android:textSize="24sp"
Android:textStyle="bold" />
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:orientation="horizontal">
<RatingBar
Android:id="@+id/ratingBarDificulty"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_gravity="center"
Android:isIndicator="true"
Android:numStars="5"
Android:stepSize="1" />
<Button
Android:id="@+id/button8"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:onClick="giveLike"
Android:text="LIKE!" />
</LinearLayout>
<TextView
Android:id="@+id/Ingredients"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:text="Ingredients"
Android:textSize="24sp"
Android:textStyle="bold" />
<Android.support.v7.widget.RecyclerView
Android:id="@+id/superList"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content" />
<TextView
Android:id="@+id/textView9"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:text="Steps"
Android:textSize="24sp"
Android:textStyle="bold" />
<Android.support.v7.widget.RecyclerView
Android:id="@+id/stepsList"
Android:layout_width="match_parent"
Android:layout_height="match_parent" />
</LinearLayout>
</Android.support.v4.widget.NestedScrollView>
</Android.support.v4.widget.NestedScrollView>
</Android.support.design.widget.CoordinatorLayout>
J'avais aussi cette erreur et j'ai essayé de la réparer en nettoyant, reconstruisant et invalidant le cache de nombreuses fois… .. Ce qui a été résolu pour moi est de changer le thème parent dans res/values/styles.xml
en un avec Base
par exemple
<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
selon la réponse ici .
Deux choses que vous pouvez essayer:
Nettoyage/Reconstruction
Ouvrez Android Studio et allez dans Outils -> Nettoyer le projet et laissez la construction du dégradé s’exécuter.
Une fois terminé, allez dans Outils -> Reconstruire le projet.
Caches d'invalidation
C’est un bogue dans Android Studio 2.3.3 et il a été signalé - Un problème de rendu lors de l’ajout de maven.google.com en tant que référentiel maven
Malheureusement, ce bogue ne sera pas corrigé dans Android Studio 2.3.3, mais a été corrigé dans Android Studio 3.0.
Attendons donc que des versions stables soient disponibles pour Android Studio 3.0
Android Studio 3.0 est maintenant dans le canal stable. Mettez-le à jour et vous ne verrez pas cette erreur