代码之家  ›  专栏  ›  技术社区  ›  Joshua Best

Android 5及更低版本上的可拉伸崩溃

  •  0
  • Joshua Best  · 技术社区  · 6 年前

    所以我有一个XML类来提供圆角按钮:

    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android" >
    <gradient
        android:angle="225"
        android:startColor="#A5C938"
        android:endColor="#A5C938"/>
    <corners
        android:bottomLeftRadius="7dp"
        android:bottomRightRadius="7dp"
        android:topLeftRadius="7dp"
        android:topRightRadius="7dp" />
    </shape>
    

    在较旧的设备上,当我通过:android:background=“@drawable/rounded”按钮引用此文件时,会出现一个崩溃,说明它不是一个drawable

                   Caused by: android.content.res.Resources$NotFoundException: Resource "com.chimesoftware.chime.chimetimemanager:drawable/rounded_button" (7f0700ae)  is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f0700ae a=-1 r=0x7f0700ae}
                      at android.content.res.Resources.loadDrawableForCookie(Resources.java:4017)
                      at android.content.res.Resources.loadDrawable(Resources.java:3929)
                      at android.content.res.Resources.loadDrawable(Resources.java:3779)
                      at android.content.res.TypedArray.getDrawable(TypedArray.java:776)
    
    2 回复  |  直到 6 年前
        1
  •  0
  •   Joshua Best    6 年前

    我正在检查应用程序现在是否在sdk 23及更高版本上,我发现这是在较低版本的sdk上发生的错误。

        2
  •  -1
  •   Olena Y    6 年前

    签入可提取的资源包 rounded_button 是 对于小屏幕设备,它应该在 drawable-hdpi