Android 矢量可绘制,渐变填充颜色不支持低于API 24

Android 矢量可绘制,渐变填充颜色不支持低于API 24,android,kotlin,vector,gradient,drawable,Android,Kotlin,Vector,Gradient,Drawable,矢量可绘制的图像包含渐变颜色,这在下面的API版本24的imageview中没有显示,我使用的是Android Studio 3.1 color.xml: Application.java: 实施: 已尝试: 在使用Android Studio 3.0的API 23下,是否有任何方法可以在imageview中反映渐变颜色?我在API 21上进行了尝试,它正在工作 我使用的是java而不是kotlin,我使用的是xml中的可绘制资源,而不是代码中的可绘制资源 我没有用这个零件 AppCompatD

矢量可绘制的图像包含渐变颜色,这在下面的API版本24的imageview中没有显示,我使用的是Android Studio 3.1

color.xml:

Application.java:

实施:

已尝试:


在使用Android Studio 3.0的API 23下,是否有任何方法可以在imageview中反映渐变颜色?

我在API 21上进行了尝试,它正在工作

我使用的是java而不是kotlin,我使用的是xml中的可绘制资源,而不是代码中的可绘制资源

我没有用这个零件

AppCompatDelegate.setCompatVectorFromResourcesEnabled()

如本文所述,您必须使用setImageDrawable而不是setImageResource


\\n我在API 21上试过了,效果很好!android.content.res.Resources$NotFoundException:文件res/drawable/ic_saleplusgoldkart.xml来自可绘制资源ID#0x7f02024e。如果您尝试使用的资源是矢量资源,则可能以不受支持的方式引用它。有关详细信息,请参阅AppCompatDelegate.setCompatVectorFromResourcesEnabled()。在android.content.res.Resources.loadDrawable(Resources.java:1923)你的成绩是多少?我的成绩版本是2.3.3distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip
   <?xml version="1.0" encoding="utf-8"?>
<gradient xmlns:android="http://schemas.android.com/apk/res/android"
android:centerX="143.856"
android:centerY="64.935"
android:gradientRadius="220.29005"
android:type="radial">
<item
    android:color="#FFFFFFFF"
    android:offset="0" />
<item
    android:color="#FFEFEFEF"
    android:offset="0.412" />
<item
    android:color="#FFC7C9CA"
    android:offset="0.813" />
<item
    android:color="#FFBDBFC1"
    android:offset="1" />
</gradient>
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="288dp"
android:height="130dp"
android:autoMirrored="true"
android:viewportWidth="288"
android:viewportHeight="130">
<path
    android:fillColor="@color/tohumkart1"
    android:pathData="M0,0H288V130H0Z"></path>
<path
</vector>
vectorDrawables.useSupportLibrary = true
   static
{
   AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);
}
 val cardImage = creditCardModel?.let { cardHelper.getCardImage(it) }
                 cardImage?.let { brCardImage.setImageResource(it) }
cardHelper.getDrawable(ApplicationContext.getInstance().activityContext,cardImage!!)