androidbuttonbackground-color

Get the background color of a button in android


How do i get the background color of a button. In the xml i set the background color using ---- android:background = XXXXX now in the activity class how can i retrieve this value that it has ?


Solution

  • Unfortunately I don't know how to retrieve the actual color.

    It's easy to get this as a Drawable

    Button button = (Button) findViewById(R.id.my_button);
    Drawable buttonBackground = button.getBackground();
    

    If you know this is a color then you can try

    ColorDrawable buttonColor = (ColorDrawable) button.getBackground();
    

    And if you're on Android 3.0+ you can get out the resource id of the color.

    int colorId = buttonColor.getColor();
    

    And compare this to your assigned colors, ie.

    if (colorID == R.color.green) {
      log("color is green");
    }