how can i set the background color of a particular button in iphone?

12,014

Solution 1

myButton.backgroundColor = [UIColor redColor];

Or whatever colour you want. This method is inherited from UIView.

Note that this only sets the background colour...

If you want to change the button's look:

[myButton setBackgroundImage:[UIImage imageNamed:@"MyImage.png"] forState:UIControlStateNormal];

You can change the state to whichever state you like.

EDIT: If you are adding the button from interface builder, make sure to change the button Type to Custom, and change the image.

Solution 2

This is how I got it done.

  1. In the .h file declare yourButton as an IBOutlet.

      @property (weak, nonatomic) IBOutlet UIButton *yourButton;
    
  2. In the .m file where you want to change the colour of the button use either

    [yourButton setBackgroundColor:[UIColor blueColor]];
    

or

[yourButton setBackgroundColor:[UIColor colorWithRed:0.80 green:0.80 blue:0.80 alpha:1.0]];

To obtain the colours I require I use this link.

Share:
12,014
iOS_User
Author by

iOS_User

Updated on June 05, 2022

Comments

  • iOS_User
    iOS_User almost 2 years

    How can I set the background color of a particular button in iPhone?

    I used:

    btnName1 = [ColorfulButton buttonWithType:UIButtonTypeRoundedRect];
    btnName1.frame=CGRectMake(45,146,220,40);
    [btnName1 setTitle:@"Continue" forState:UIControlStateNormal]; 
    [btnName1 setTitleColor:[UIColor blackColor] forState:UIControlStateNormal]; 
    [btnName1 setImage:[UIImage imageNamed:@"green.png"] forState:UIControlStateNormal];
    UIImage *img =[UIImage imageWithContentsOfFile:[[NSBundle mainBundle]pathForResource:@"greenish" ofType:@"png"]];
    UIImage *strechableImage = [img stretchableImageWithLeftCapWidth:12 topCapHeight:0];
    [btnName1 setBackgroundImage:strechableImage forState:UIControlStateNormal];
    [btnName1 setNeedsDisplay];
    [InfoView addSubview:btnName1];
    

    It's correctly working on iPhone simulator but not on iPod (color not shown in iPod).