Showing posts with label UIButton setTitle forState example. Show all posts
Showing posts with label UIButton setTitle forState example. Show all posts

Thursday, May 30, 2013

UIButton setTitle forState example in Objective C (iOS).

UIButton setTitle forState

Sets the title to use for the specified state.

- (void)setTitle:(NSString *)title forState:(UIControlState)state

Parameters of [UIButton setTitle forState]
title
The title to use for the specified state.
state
The state that uses the specified title. The possible values are described in UIControlState.

Discussion of [UIButton setTitle forState]
Use this method to set the title for the button. The title you specify derives its formatting from the button’s associated label object. If you set both a title and an attributed title for the button, the button prefers the use of the attributed title over this one.

At a minimum, you should set the value for the normal state. If a title is not specified for a state, the default behavior is to use the title associated with the UIControlStateNormal state. If the value for UIControlStateNormal is not set, then the property defaults to a system value.

UIButton setTitle forState example.
UIButton *backbtn=[[UIButton alloc] initWithFrame:CGRectMake(0, 0, 68, 38)];
[backbtn setTitle:@"Your string" forState:UIControlStateNormal];
//[backbtn setImage:[UIImage imageNamed:@"BackBtn.png"] forState:UIControlStateNormal];
[backbtn addTarget:self action:@selector(backBtnClicked) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:backbtn];

Example of [UIButton setTitle forState].
MyViewcontroller *myView = [[MyViewcontroller alloc] initWithNibName:@"MyViewcontroller" bundle:nil];
[scrollView addSubview:myView.view]; // view is loaded
[myView.imageButton setTitle:@"ddd" forState:UIControlStateNormal]; // imageButton is now wired

UIButton setTitle forState example.
UIButton *dateButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[dateButton setFrame:CGRectMake(240.0, 57.0, 60.0, 30.0)];
[dateButton setTitle:@"Date" forState:UIControlStateNormal];

[dateButton setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[dateButton setBackgroundImage:[UIImage imageNamed:@"bg_headline.png"] forState:UIControlStateNormal];
[dateButton addTarget:self action:@selector(GoToDateSettings:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:dateButton];

End of UIButton setTitle forState example article.

Wednesday, April 17, 2013

UIButton setTitle forState: example objc


setTitle forState
Sets the title to use for the specified state.
- (void)setTitle:(NSString *)title forState:(UIControlState)state

Parameters
title
The title to use for the specified state.
state
The state that uses the specified title. The values are described in UIControlState.

Discussion
In general, if a property is not specified for a state, the default is to use the UIControlStateNormal value. If the value for UIControlStateNormal is not set, then the property defaults to a system value. Therefore, at a minimum, you should set the value for the normal state.

Example for ( setTitle:forState: )
{
    NSString            *title = @"My button title";
    UIColor              *titleColor = [UIColor colorWithWhite:0.5f alpha:1.0f];
    UIImage             *bgImage = [UIImage imageNamed:@"yourImage.png"];

    UIImage             *highlightedBgImage = [UIImage imageNamed:@"yourImage.png"];
    UIButton            *button = [UIButton buttonWithType:UIButtonTypeCustom];
    
    // Create button.
    //
    button.bounds = CGRectMake( 0.0f, 0.0f, bgImage.size.width, bgImage.size.height );
    button.titleLabel.font = [UIFont fontWithName:@"HelveticaNeue-Medium" size:14.0f];
    button.titleLabel.adjustsFontSizeToFitWidth = YES;
    button.titleLabel.minimumFontSize = 10.0f;
    [button setTitleColor:titleColor forState:UIControlStateNormal];
    [button setTitleColor:titleColor forState:UIControlStateHighlighted];
    [button setTitle:title forState:UIControlStateNormal];
    [button setTitle:title forState:UIControlStateHighlighted];
    [button setBackgroundImage:bgImage forState:UIControlStateNormal];
    [button setBackgroundImage:highlightedBgImage forState:UIControlStateHighlighted];

    // You must specify your target object and action selector here.
    // 
    [button addTarget:target action:action forControlEvents:UIControlEventTouchUpInside];

}