Как ссылаться на ссылки сторонней библиотеки в styles.xml ?

#android #android-styles

#Android #android-стили

Вопрос:

Я использую библиотеку Material Range Bar, которая имеет здесь свои собственные 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 файл в :design-library файл, который :app зависит от

Комментарии:

1. Указывает ли ваш design-library модуль библиотеку Material Range Bar в качестве одной из своих зависимостей?

2. Спасибо @BenP. в этом проблема. Такая глупая моя ошибка: face_palm . Вы хотите ответить на вопрос или вопрос, который нужно удалить?

Ответ №1:

Убедитесь, что ваш библиотечный модуль ( design-library ) указывает библиотеку линейки материалов в качестве одной из своих зависимостей. Без этой зависимости он не сможет «видеть» атрибут, даже если ваш app модуль включает зависимость.