Setting Button Text Color with a Style

ryandlf picture ryandlf · Sep 23, 2011 · Viewed 16.4k times · Source

I have not been able to set the text color of a Button using a predefined style. I must be missing something simple. For example, I have a button:

    <Button
    android:id="@+id/calculate_button"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/calculate"
    android:background="@drawable/rounded_bottom_shape"
    android:padding="5dp"
    android:textAppearance="@style/CalcResultStyle">
    </Button>

And the corresponding style is:

<style name="CalcResultStyle">
    <item name="android:textSize">12sp</item>
    <item name="android:textColor">#FFF</item>
</style>

The size portion works fine, but the color does not. The only workaround I have found is to set the textColor on the actual button, which means changing colors on a number of buttons becomes a pain. I also prefer to set the textColor attribute in my styles using a color reference such as @color/Brown for example, but setting the color using a reference or explicitly seems to make no difference.

Answer

kalpana c picture kalpana c · Sep 23, 2011

I use this. Maybe it will help you. Can you please tell me what you wrote in rounded_bottom_shape?

<Button
android:id="@+id/calculate_button"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Calculate"
android:background="#454545"
android:padding="5dp"
style="@style/CalcResultStyle">
</Button>