android - Lollipop 前设备的 ResourceNotFoundException

标签 android android-vectordrawable

我已经拥有的:

这是我的 ImageView:

<ImageView
        android:id="@+id/play_pause"
        android:layout_width="match_parent"
        android:layout_height="@dimen/timer_button_layoutHeight"
        app:srcCompat="@drawable/play_button_vector"
        android:onClick="startOrPauseTimer"/>

我使用的是 Android 插件版本 2.0:

classpath 'com.android.tools.build:gradle:2.0.0'

我在应用程序级别 build.gradle 的 android 的 defaultConfig 中启用了矢量可绘制支持库标志:

vectorDrawables.useSupportLibrary = true

我还添加了矢量可绘制支持库依赖项:

compile 'com.android.support:support-vector-drawable:23.2.1'

在 Activity 类中,我根据点击监听器动态更改矢量可绘制对象:

playPauseButton = (ImageView) findViewById(R.id.play_pause);
playPauseButton.setImageResource(R.drawable.play_button_vector);

问题:

我在 pre-lollipop 设备中遇到 Resource not found 异常。该代码适用于 Lollipop 之后的版本。

android.content.res.Resources$NotFoundException: File res/drawable/play_button_vector.xml from drawable resource ID #0x7f020119

我在图像应该出现的地方什么也看不到。但是,如果我单击该图像应该位于的位置,它就会被 clickListener 捕获。我做错了什么?

最佳答案

根据 Android 开发者的最新帖子,

For AppCompat users, we’ve decided to remove the functionality which let you use vector drawables from resources on pre-Lollipop devices due to issues found in the implementation in version 23.2.0/23.2.1 https://code.google.com/p/android/issues/detail?id=205236. Using app:srcCompat and setImageResource() continues to work.

来源:https://plus.google.com/+AndroidDevelopers/posts/iTDmFiGrVne

关于android - Lollipop 前设备的 ResourceNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36689554/

相关文章:

android:fillType ="evenOdd"在 api 23 中不起作用 - 矢量可绘制任何替代解决方案?

android - 在 Animated Vector Drawable 中为 "fillColor"属性设置动画

android - Airwatch:它如何与版本一起使用?

javascript - Nativescript 传数据查看

java - 适用于 Android/Java 的 RESTful Web 服务选项

android - 无法让 cordova-plugin-statusbar 在 Android 上设置颜色

java - Support Library中的AnimatedVectorDrawable和 "pathData"的动画

android - 在显示之前处理状态栏通知

android - 为 android 简化矢量绘图

android - xml中增加VectorDrawable图标描边