2012-03-19 10 views
1

たとえば、背景色を#FF0000に設定すると、明るい赤が表示されます。しかし、私は暗い赤を取得しています。バックグラウンドを#FFFFFFに設定すると、白ではなく灰色になります。Android TextViewのソリッドカラーの背景とテキストが暗く表示される

アプリケーションのテーマを暗いものから明るいものに切り替えると、すべての色が予期したものよりも明るく表示されるようになったので、赤色は洗い流された赤色になり、黒色は灰色になります。

これはなぜ起こっているのですか?

詳細情報:ここに私のレイアウトです:

(私はそれをクリックだとき黒から白にのTextViewの背景を変更しようとしている。)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 

    <ListView android:id="@+id/wordList" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1.0" /> 

    <TextView android:id="@+id/addButton" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:padding="10dp" 
     android:textSize="20sp" 
     android:textStyle="bold" 
     android:gravity="center_horizontal" 
     android:background="@color/black" 
     android:text="@string/add_button" 
     android:textColor="@color/white" 
     android:clickable="true"/> 

</LinearLayout> 

答えて

0

あなたはアルファチャンネルが欠落しています。色は#AARRGGBBの形式で表示されます.AAは透明です。明るい不透明な赤の場合は、#FFFF0000を試してください。

+0

この解決策はおそらく機能しますが、通常これのデフォルト値はとにかくFFです。 OP以外のOPの透明性を設定しているのでしょうか? –

+0

私は赤のために設定したビットは透明に使用され、青のために定義されていないものはゼロと見なされると思います。これにより、予期しない動作が発生します。 – azertiti

+0

それでした。私は例で見たように、整数を使ってコードから色を設定していました。この例では0x30FFFFFFを使用していました。明らかに、私はあなたがカラーコードで不透明度を定義することを知っているので、 "30"は不透明度を設定していました。 Derp。 0xFFFFFFFFに設定してください。すべて正常です。 – Jim

関連する問題