【问题标题】:android.graphics.drawable.RippleDrawable errorandroid.graphics.drawable.RippleDrawable 错误
【发布时间】:2017-02-23 18:05:46
【问题描述】:

首先我的目标 API 是 22 (Android L)。一切正常,直到我将目标 API 降低到 19 以支持 Android 4.4 (Kitkat)。现在我收到了这个奇怪的错误。该应用程序不会崩溃,但只有一些正常按钮正在消失。 我正在通过 XML 文件和代码设置我的布局。 错误

找不到类 'android.graphics.drawable.RippleDrawable',引用自方法 android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering

有谁知道是什么导致了这个错误?我该如何解决?

我的依赖:

compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.android.support:design:24.2.1'
compile 'com.android.support:support-v4:24.2.1'
compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha9'

更新: 我将每个矢量文件移动到新的 drwabale-v21 文件夹。现在我收到此错误。:

Android.view.InflateException: Binary XML file line #11: Error inflating class 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2184) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233) 在

....

不幸的是,Android 4.4 不支持矢量绘图。 我能为 => Android 4.4 支持矢量绘图做什么?

【问题讨论】:

  • stackoverflow.com/a/35908070/1222099 问题是您需要在 getPressedColorRippleDrawable 中返回 Drawable 而不是 RippleDrawable。否则,在棒棒糖之前的设备上,您将收到一个 VerifyError。
  • 这是一个不同的问题,因为我是通过 XML 文件而不是通过代码设置布局。而且我的应用不会崩溃。
  • 创建和膨胀两种不同的布局怎么样?
  • 如您所见here,您是否将支持库 22.1 与 DrawableCompat 一起使用?
  • 'compile com.android.support:support-v4:24.2.1' 编译'com.android.support:appcompat-v7:24.2.1'

标签: android android-layout android-4.4-kitkat


【解决方案1】:

过去 2 小时我也遇到了同样的问题。感谢 Dominic 的评论和 Android Packages Page 帮助我找到以下几行来解决它

implementation 'com.android.support:support-compat:26.1.0'
implementation 'com.android.support:support-core-utils:26.1.0'
implementation 'com.android.support:support-core-ui:26.1.0'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-29
    • 1970-01-01
    相关资源
    最近更新 更多