стили Android в многомодульном проекте - PullRequest
0 голосов
/ 30 июня 2019

Я заметил, что в нашем ide в проекте модуля (com.android.library) мы можем видеть, что стили применяются, если мы выполняем приложение на нашем устройстве, но не видим их в редакторе макетов.

Это будет выглядеть так, как выглядит моя структура пакета

app (com.android.application)
-res
--values
---styles.xml

module (com.android.library)
-res
--layouts
---module.xml.

Здесь, в моем макете module.xml, если я пытаюсь получить доступ к стилю, указанному в моём модуле приложения, он отображается как ошибка вРедактор макета enter image description here

Тем не менее, он компилируется правильно, и я даже могу видеть стили, примененные к устройству, но это неудобно, если я не могу увидеть стили, примененные вредактор макетов.

1 Ответ

0 голосов
/ 30 июня 2019

Ваш модуль 'module' не зависит от модуля 'app' (где определены цвета), поэтому он не виден. Чтобы сделать это правильно, вы должны создать еще один модуль с общими стилями и сделать так, чтобы «модуль» и «приложение» зависели от этого общего модуля.

Вы также можете определить атрибуты в вашем модуле 'module' и определить значения для тех атрибутов в вашей теме, которые будут определены в 'app'.

Для colorPrimary определен атрибут ?android:colorPrimary. Вы можете ссылаться на этот атрибут в своем модуле и надеяться, что он установлен в теме вашего приложения.

...