Как я могу установить значение по умолчанию для ссылочного атрибута? - PullRequest
0 голосов
/ 26 апреля 2019

Я должен извлечь и создать ссылку для всех цветов в моих компонентах Android xml. И я создаю значения для этих ссылок в нескольких темах. Но мое приложение аварийно завершает работу, когда определенный XML-файл не связан ни с одной темой (поскольку для ссылок не будет значений). Итак, как я могу решить эту проблему. Есть ли способ установить значения по умолчанию для ссылочных атрибутов?

Я попытался поэкспериментировать с тегами android xml, но появляются новые ошибки.

Первоначально цвет текста для любой темы - «# 000000».

<!-- My text view tag -->
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="#000000">

Теперь цвет текста определяется на основе темы после извлечения ссылки следующим образом:

<!-- My text view tag -->
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="?myTextViewColor">
<!-- My reference tag -->
<attr name="myTextViewColor" format="color" />
<!-- My theme tag -->
<style name="MyTheme">
    <item name="myTextViewColor">#000000</item>
</style>

Если мой xml не связан ни с одной темой, он не может получить значение для ссылки "myTextViewColor" и аварийно завершает работу со следующей ошибкой: Строка двоичного файла XML №21: Строка двоичного файла XML №21: Ошибка надувания класса.

Я хочу создать ссылки для всех моих цветов, но не хочу, чтобы мое приложение зависало, если оно не может найти значение ссылки. Могу ли я установить значение по умолчанию для ссылки ??

...