Может кто-нибудь дать мне знать, что если в приложении и библиотеке есть какой-то размер с таким же именем.

dimension.xml внутри приложения

<dimen name="activity_horizontal_margin">10dp</dimen>

dimension.xml внутри библиотеки

<dimen name="activity_horizontal_margin">12dp</dimen>

Какой из них будет использоваться во время выполнения?

Я могу попробовать это, но я не буду ясно по причине того, что будет использоваться в качестве окончательного значения.

-1
Khemraj 21 Авг 2018 в 13:09

3 ответа

Лучший ответ

Когда вы переопределяете (то же имя) ресурс измерения, это все равно, что переопределять ресурс lib.
Так же, как вы переопределяете метод класса.

2
user8959091user8959091 21 Авг 2018 в 10:21

Я думаю, что ответ будет:

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

0
Ümañg ßürmån 21 Авг 2018 в 10:33

Вы можете попытаться переопределить размер в вашем dimensions.xml:

<resources xmlns:tools="http://schemas.android.com/tools">
    <dimen name="activity_horizontal_margin" tools:override="true">12dp</dimen>
</resources>

Используйте с осторожностью, так как это взлом, а не реальное решение. Решение может не работать, если имя ресурса будет изменено в будущем выпуске библиотеки.

2
Akshay Katariya 21 Авг 2018 в 10:26
51946348