2.17. Displaying Static Text with UILabel

Problem

You want to display text to your users. You would also like to control the text’s font and color.

Note

A static text is text that is not directly changeable by the user at runtime.

Solution

Use the UILabel class.

Discussion

Labels are everywhere in iOS. You can see them in practically every application, except for games where the content is usually rendered with OpenGL ES instead of the core drawing frameworks in iOS. Figure 2-50 shows several labels in the Settings app on the iPhone.

Labels as titles of each one of the settings

Figure 2-50. Labels as titles of each one of the settings

You can see that the labels are displaying text in the Settings app, such as General, iCloud, Twitter, Phone, FaceTime, etc.

To create a label, instantiate an object of type UILabel. Setting or getting the text of a label can be done through its text property. So let’s define a label in our view controller’s header file:

#import <UIKit/UIKit.h>

@interface Displaying_Static_Text_with_UILabelViewController
           : UIViewController

@property (nonatomic, strong) UILabel *myLabel;

@end

Now in the viewDidLoad method, instantiate the label and tell the runtime where the label has to be positioned (through its frame property) on the view to which it will be added (in this case, our view controller’s view):

- (void)viewDidLoad{
  [super viewDidLoad];

  self.view.backgroundColor = [UIColor whiteColor];
  CGRect labelFrame = CGRectMake ...

Get iOS 6 Programming Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.