如何在styles.xml中引用第三方库的属性?

How to reference third party library's attrs in styles.xml?

我在这里使用 Material Range Bar library which has its own attrs:

<resources>

    <declare-styleable name="RangeBar">
        <attr name="mrb_rangeBarColor" format="reference|color" />
...

我的styles.xml:

  <style name="MyAppRangeBar">
    <item name="mrb_rangeBarColor">@color/gray</item>
...

./gradlew assembleRelease 给我:

> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > 1 exception was raised by workers:
     com.android.builder.internal.aapt.v2.Aapt2Exception: Android resource linking failed
     /var/lib/jenkins/workspace/TestEveryPR/MyApp/cmb-views/build/intermediates/packaged_res/release/values/values.xml:884:5-893:11: AAPT: error: style attribute 'attr/mrb_rangeBarColor (aka com.myapppackage.prompts:attr/mrb_rangeBarColor)' not found.

我错过了什么?

过去,当我们的 styles.xml 在 :app 模块中时它起作用了。 现在它停止工作,因为我将 styles.xml 文件移动到 :app 依赖于

:design-library

确保您的库模块 (design-library) 将 Material Range Bar 库指定为其依赖项之一。没有这种依赖性,它将无法“看到”该属性,即使您的 app 模块包含该依赖性。