尽管在drawable文件夹中存在资源,但出现了“资源未找到异常(无法找到资源ID)”的问题。

11

我在Crashlytics中得到了这个崩溃报告:

Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.app/com.example.app.activities.TabActivity}: android.view.InflateException: Binary XML file line #27: Binary XML file line #9: Binary XML file line #9: Error inflating class <unknown>
   at android.app.ActivityThread.performLaunchActivity + 2957(ActivityThread.java:2957)
   at android.app.ActivityThread.handleLaunchActivity + 3032(ActivityThread.java:3032)
   at android.app.ActivityThread.-wrap11(ActivityThread.java)
   at android.app.ActivityThread$H.handleMessage + 1696(ActivityThread.java:1696)
   at android.os.Handler.dispatchMessage + 105(Handler.java:105)
   at android.os.Looper.loop + 164(Looper.java:164)
   at android.app.ActivityThread.main + 6942(ActivityThread.java:6942)
   at java.lang.reflect.Method.invoke(Method.java)
   at com.android.internal.os.Zygote$MethodAndArgsCaller.run + 327(Zygote.java:327)
   at com.android.internal.os.ZygoteInit.main + 1374(ZygoteInit.java:1374)

--

Caused by android.content.res.Resources$NotFoundException
Drawable (missing name) with resource ID #0x7f080060

Caused by android.content.res.Resources$NotFoundException: Drawable (missing name) with resource ID #0x7f080060

这是我的XML布局文件:
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
android:clickable="true"
android:focusable="true">

<RelativeLayout
    android:id="@+id/layout_header"
    android:layout_width="match_parent"
    android:layout_height="@dimen/px_149"
    android:background="@drawable/back_nav_new_color"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<!--    <ImageView
        android:id="@+id/iv_theme_dark"
        android:layout_width="@dimen/px_30"
        android:layout_height="@dimen/px_30"
        android:src="@color/old_background_main"
        android:layout_marginBottom="@dimen/px_3"
        android:layout_marginLeft="24dp"
        app:layout_constraintBottom_toTopOf="@id/iv_theme_light"
        app:layout_constraintVertical_chainStyle="packed"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_marginStart="24dp" />

    <ImageView
        android:id="@+id/iv_theme_light"
        android:layout_width="@dimen/px_30"
        android:layout_height="@dimen/px_30"
        app:layout_constraintBottom_toBottomOf="@id/layout_header"
        android:layout_marginLeft="24dp"
        android:src="@color/newColorPrimaryDark"
        android:layout_marginTop="@dimen/px_3"

        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/iv_theme_dark"
        android:layout_marginStart="24dp" />-->

<ImageView
    android:id="@+id/iv_profile"
    android:layout_width="@dimen/px_64"
    android:layout_height="@dimen/px_64"
    android:layout_marginTop="8dp"
    android:layout_marginEnd="24dp"
    android:layout_marginRight="24dp"
    android:contentDescription="@string/sample_description"
    android:scaleType="fitXY"
    android:src="@drawable/profile_avatar"
    app:layout_constraintEnd_toEndOf="@id/layout_header"
    app:layout_constraintTop_toTopOf="@id/layout_header" />

<TextView
    android:id="@+id/nav_header_fullname"
    android:layout_width="wrap_content"
    android:layout_height="@dimen/px_30"
    android:layout_marginTop="5dp"
    android:gravity="center_vertical"
    android:textColor="@color/black_text"
    android:textSize="@dimen/sp_15"
    android:visibility="gone"
    app:layout_constraintEnd_toEndOf="@id/iv_profile"
    app:layout_constraintTop_toBottomOf="@id/iv_profile" />

<Button
    android:id="@+id/btn_login"
    style="@style/AppTheme.RoundedCornerCalenderButtonAllSellers"
    android:layout_width="@dimen/px_65"
    android:layout_height="@dimen/px_30"
    android:layout_marginTop="@dimen/px_4"
    android:text="@string/xml_log_and_reg_btn_login"
    android:textColor="@color/black_text"
    android:textSize="@dimen/sp_13"
    android:visibility="gone"
    app:layout_constraintEnd_toEndOf="@id/iv_profile"
    app:layout_constraintTop_toBottomOf="@id/iv_profile" />

<TextView
    android:id="@+id/nav_header_phonenumber"
    android:layout_width="wrap_content"
    android:layout_height="@dimen/px_30"
    android:layout_marginBottom="12dp"
    android:gravity="center_vertical"
    android:text="@string/sample_mobile"
    android:textColor="@color/black_text"
    android:textSize="@dimen/sp_15"
    android:visibility="gone"
    app:layout_constraintBottom_toTopOf="@id/drawer_list"
    app:layout_constraintEnd_toEndOf="@id/iv_profile" />

<Button
    android:id="@+id/btn_register"
    style="@style/AppTheme.RoundedCornerCalenderButtonAllSellers"
    android:layout_width="@dimen/px_65"
    android:layout_height="@dimen/px_30"
    android:layout_marginTop="@dimen/px_4"
    android:text="@string/register"
    android:textColor="@color/black_text"
    android:textSize="@dimen/sp_13"
    android:visibility="gone"
    app:layout_constraintEnd_toEndOf="@id/btn_login"
    app:layout_constraintTop_toBottomOf="@id/btn_login" />

<ImageView
    android:id="@+id/iv_launch"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginEnd="2dp"
    android:layout_marginRight="2dp"
    android:contentDescription="@string/sample_description"
    android:scaleX="-1"
    android:src="@drawable/ic_launch"
    android:visibility="invisible"
    app:layout_constraintBottom_toTopOf="@id/nav_header_phonenumber"
    app:layout_constraintEnd_toStartOf="@id/nav_header_fullname"
    app:layout_constraintTop_toBottomOf="@id/iv_profile"
    app:layout_constraintVertical_bias="0.68" />

<androidx.recyclerview.widget.RecyclerView
    android:id="@+id/drawer_list"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingTop="@dimen/px_8"
    app:layout_constraintTop_toBottomOf="@+id/layout_header" />

</androidx.constraintlayout.widget.ConstraintLayout>

这个崩溃在4个设备上发生了12次。我该如何解决这个问题?


1
可能问题出在你的@drawable/profile_avatar或者@drawable/ic_launch里面。请确保你的@drawable/profile_avatar@drawable/ic_launch图片在drawable文件夹中,而不是在drawable-v24文件夹中。 - AskNilesh
你能发布相关的Java代码吗? - karthik vishnu kumar
@karthikvishnukumar 崩溃与Java类无关,因为它发生在膨胀行View v = inflater.inflate(R.layout.fragment_navigation_drawer, container, false); - Alireza Noorali
1
@AlirezaNoorali。如果您在TextView中将int设置为文本,可能会出现此类异常。请考虑进行此检查。 - karthik vishnu kumar
使用高分辨率的图片,并将其添加到 xxxhdpi-draawble 中。不需要在其余的 drawable 文件夹中添加任何其他图片。 - Jaimin Modi
显示剩余3条评论
3个回答

3

当我为28版本创建应用程序,然后尝试在21版本设备上运行应用程序时,出现了同样的问题。我把所有PNG文件放在“res/drawable”中,看起来是这样的。仔细看一下,文件名后面会以灰色显示“(v24)”。实际上,除了一个文件外,所有文件都在“res/drawable-v24”中。我将它们移动到“res/drawable”(在Android Studio之外),一切顺利。


0

我刚遇到了与矢量可绘制资产和库存图标相关的同样奇怪的问题。 突然间,my_image.xml在设计选项卡中停止显示实际的png文件。我重新创建了它,然后它又开始工作了。如果图像资产有一个XML文件,请双击该文件并检查“设计”选项卡(在代码/分割/设计之间)以查看项目是否正确读取您的资产。对于损坏的文件,设计选项卡什么也没有显示,只有黑色背景。


-1

我认为你需要检查一下哪个文件夹里有你的可绘制资源,将它从drawable-v24移动到drawable文件夹中可能会有所帮助。此外,如果你正在使用多个包,请确保将图像添加到正确的包的drawable文件夹中。

清理并构建,你的错误将得到解决。

希望能帮到你,祝一切顺利。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接