Android: как у вас есть несколько атрибутов с одним и тем же перечислением?

У меня есть атрибут, определенный как перечисление со списком значений:

<attr name="font" format="enum">
    <enum name="AvenirMedium" value="1" />
    <enum name="AvenirBlack" value="2" />
</attr>

Я хотел бы использовать несколько атрибутов с разными именами в одном и том же файле .

Например:

<declare-styleable name="CustomView">
    <attr name="font" />
    <attr name="leftFont" />
    <attr name="rightFont" />
</declare-styleable>

Вместо того, чтобы определять перечисление несколько раз, я пытаюсь найти способ определить перечисление один раз, но чтобы шрифт, leftFont, rightFont использовали один и тот же список перечислений.

Кто-нибудь знает, как это можно осуществить?

Изменить: я хорошо знаю, как определить attr глобально и ссылаться на него в нескольких объявлениях с возможностью стиля. Этот вопрос заключается в использовании перечисления в нескольких атрибутах с разными именами.


person Steve Tucker    schedule 06.06.2017    source источник
comment
Это не дубликат. Я хорошо знаю, как определить attr глобально и ссылаться на него во множестве declare-styleable. Этот вопрос заключается в использовании перечисления в нескольких атрибутах с разными именами.   -  person Steve Tucker    schedule 08.06.2017


Ответы (1)


Поскольку имя является единственным параметром attr, который служит ключом, ответ: нет.. к сожалению, это невозможно..

Вы должны сделать одинаковые перечисления с разными именами.

person convexHull    schedule 07.06.2017