2011-12-30 6 views
13

Androidプログラミングは私を夢中にしています。 GUI開発のためのXMLまたはプログラム可能な方法は、コードの正しい古い犬の朝食を作成しています - ここにいくつかのもの、そこにいくつかのもの。Androidシステムの色定数

私の現在の不満はすべてXMLを維持しようとしており、TextViewの背景色を、正確なカラーコードを指定することなくButtonの背景色と同じ色に設定したいと考えています。 java.awt.SystemColor.controlのようなシステム定数を使用したいと思いますが、XMLで指定します。

何かを再指定しなくてもこれを行うことができますか?私はのようなソリューションを探しています:android:background="{Insert constant here}"

答えて

17

あなたはcolors.xmlと呼ばれるのres /値のファイルを持っている必要があり、それは次のようになります。

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <color name="white">#FFFFFF</color> 
    <color name="grey">#7A7A7A</color> 
    <color name="background">#0044AA</color> 
    <color name="bluelight">#449DEF</color> 
    <color name="bluedark">#2F6699</color> 
    <color name="greenlight">#70C656</color> 
    <color name="greendark">#53933F</color> 
    <color name="orangelight">#F3AE1B</color> 
    <color name="orangedark">#BB6008</color> 
    <color name="black">#000000</color> 
</resources> 

その後、あなたはこのようなXMLで色を呼び出すことができます。

android:background="@color/greenlight" 
+3

しかし、私は色を指定する必要はありません。私はシステムスタイルを指定したい。 – zam664

+1

多くのシステム定義の色がないので、これを行うのが一般に好ましい方法ですが、android:background = "@ android:color/white"を使うことができます。ここでは完全なリストを見つけることができます:http://developer.android.com/reference/android/R.color.html –

+0

私はヘキサ10進コードに変換する必要があるex:17170449の色定数を持っています。出来ますか?ありがとうございます@MattHarris –

20

"@ color/white"、またはアンドロイドシステム定数 "@android:color/holo_red_light"のようなものを使うことができます。あなたはより多くの制御をしたい場合は別の方法として、あなたは常に描画可能で、共通の背景を定義し、アンドロイドのために利用可能なリソースの「@ mydrawable /描画可能」

リストに背景を設定することができます(background_darkのような)、ここで色:http://developer.android.com/reference/android/R.color.html

+1

これは私がAndroidで抱えている問題です。私はすべてを自分で再定義する必要はありません。私はシステム上で標準を使用したい。私はこれらの標準が何であるか気にしない、私は似たようなユーザーのルック・アンド・フィールを求めている。 – zam664

+0

これは確かにあなたがアンドロイドを使うべき理由です:color/...多くの既存のプリセットは色に固有でなく、メーカーに基づいて変更されます。更新された回答 –

+1

あなたの例が間違っていて、「@android:color/red」がありません –

1
このように使用

android:background="#FF00FF"

2

チェックアウトこのページ:http://android-er.blogspot.com/2010/03/using-color-in-android.html

をあなたが使用することができます:あなたのxmlで: "@android色/白"。私はいくつかの他の一般的な色がサポートされていると思いますが、どの色がよく分かっているのか分かりません。

一般的には、独自のcolors.xmlリソースファイルを作成し、そこに配置するものを参照することをお勧めします。

0

あなたは定数XMLを作成するために、XMLファイルを使用して必要としない、

それはあなたを助けることができます。 Java constants file

+0

JavaではなくXMLでやりたい私はJavaプログラミングを介して色を得ることができますが、その意図はGUIデザインのためにXMLを使用することです。私はXMLの半分とJavaの半分を望んでいません。 – zam664

関連する問題