24

colors.xml定義済みの別の色を参照して色を定義する方法があるかどうか、何度も疑問に思いました。試してみたところ、@color/XXX を使用して他の色を参照できるようです。

たとえば、colors.xml は次のようになります。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    …
    <color name="primary_blue">#205081</color>
    <color name="action_bar_text">@color/primary_blue</color>
    …
</resources>

しかし、他の人に私の定義を直接使用してほしくありprimary_blueません。コンテキストなしで何かを青色にするのは意味がありません。私が思いついた最善の解決策は、「直接」の色のように接頭辞を付けてから、primary_blue直接使用してはならないことをコメントすることです。

これらの直接色の使用を防ぎながら、colors.xml ファイルがそれらを参照できるようにする方法はありますか? おそらくスタイルやapklibが助けになると思います。

4

1 に答える 1