views:

410

answers:

2

Title pretty much says it all, I want to know how to have a multi-line label on a UIButton.

+1  A: 

Use the UIButton's titleLabel, specifically titleLabel.numberOfLines property:

titleLabel
A view that displays the value of the currentTitle property for a button. (read-only)

@property(nonatomic,readonly,retain) UILabel *titleLabel
Discussion
Although this property is read-only, its own properties are read/write. Use these 
properties to configure the appearance of the button label. For example:

UIButton *button                  = [UIButton buttonWithType: UIButtonTypeRoundedRect];
button.titleLabel.font            = [UIFont systemFontOfSize: 12];
button.titleLabel.lineBreakMode   = UILineBreakModeTailTruncation;
button.titleLabel.shadowOffset    = CGSizeMake (1.0, 0.0);
The titleLabel property returns a value even if the button has not been displayed yet.
The value of the property is nil for system buttons.
mahboudz