首页 > 解决方案 > 资源“XX”(7f07005e)不是可绘制对象(颜色或路径):TypedValue{t=0x1/d=0x7f07005e a=-1 r=0x7f07005e}

问题描述

当我启动我的应用程序时,出现此错误(仅在 api 22 中),显然这是我为 button_login 所做的自定义背景所面临的一些错误

错误:android.content.res.Resources$NotFoundException:资源“br.com.tecmafandroid.projeto.tecmaf:drawable/backgroud_botao_login”(7f07005e)不是可绘制对象(颜色或路径):TypedValue{t=0x1/d=0x7f07005e a=-1 r=0x7f07005e}

我的 logcat 错误是:

   Caused by: android.content.res.Resources$NotFoundException: Resource "br.com.tecmafandroid.projeto.tecmaf:drawable/backgroud_botao_login" (7f07005e)  is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f07005e a=-1 r=0x7f07005e}
    at android.content.res.Resources.loadDrawableForCookie(Resources.java:2441)
    at android.content.res.Resources.loadDrawable(Resources.java:2381)
    at android.content.res.TypedArray.getDrawable(TypedArray.java:749)
    at android.view.View.<init>(View.java:3737)
    at android.widget.TextView.<init>(TextView.java:637)
    at android.widget.Button.<init>(Button.java:111)
    at android.widget.Button.<init>(Button.java:107)
    at android.support.v7.widget.AppCompatButton.<init>(AppCompatButton.java:70)
    at android.support.v7.widget.AppCompatButton.<init>(AppCompatButton.java:66)
    at android.support.v7.app.AppCompatViewInflater.createButton(AppCompatViewInflater.java:186)
    at android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:109)
    at android.support.v7.app.AppCompatDelegateImplV9.createView(AppCompatDelegateImplV9.java:1035)
    at android.support.v7.app.AppCompatDelegateImplV9.onCreateView(AppCompatDelegateImplV9.java:1092)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:725)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:806) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:504) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:414) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:365) 
    at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287) 
    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139) 
    at br.com.tecmafandroid.projeto.tecmaf.activity.TelaInicialActivity.onCreate(TelaInicialActivity.java:24) 
    at android.app.Activity.performCreate(Activity.java:5990) 
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
    at android.app.ActivityThread.access$800(ActivityThread.java:151) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    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) 

activity_tela_initial(调用按钮的xml):

    <?xml version="1.0" encoding="utf-8"?>
    <android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/background_degrade"
    tools:context=".activity.TelaInicialActivity">

    <Button
        android:id="@+id/btFacaLogin"
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:layout_marginBottom="24dp"
        android:background="@drawable/backgroud_botao_login"
        android:text="Faça Login"
        android:textColor="@color/textColorButton"
        app:layout_constraintBottom_toTopOf="@+id/textView6"
        app:layout_constraintEnd_toEndOf="@+id/textView6"
        app:layout_constraintStart_toStartOf="@+id/textView6" />

</android.support.constraint.ConstraintLayout>

background_botao_login(xml backgroud_botao_login):

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <corners android:radius="20dp"></corners>

    <solid android:color="#FFFFFF"></solid>

    <stroke
        android:width="1dp"
        android:color="#C9DBE9"></stroke>

</shape>

标签: androidandroid-layout

解决方案


当您将 xml 放入错误的可绘制文件夹时,我已经看到此问题发生。例如,drawable-v24它在 API < 21 上崩溃。

您可以在没有任何 api 版本的情况下粘贴background_botao_login.xml到 drawable 中来解决问题。

右键单击background_botao_login并单击在文件夹中显示(linux中的文件)然后将其复制并转到上一个文件夹并找到可绘制并粘贴在其​​中。


推荐阅读