Center text in a UILabel

The Code is

[yourLabel setTextAlignment:UITextAlignmentCenter];

or (of course) the Obj-C 2.0 Dot-Syntax

yourLabel.textAlignment = UITextAlignmentCenter;

For iOS 6 (and higher) you should use NSTextAlignmentCenter instead of UITextAlignmentCenter:

yourLabel.textAlignment = NSTextAlignmentCenter;

Source

And if you want backward compatibiliy to iOS 5 also you can do this,

#ifdef __IPHONE_6_0
# define ALIGN_CENTER NSTextAlignmentCenter
#else
# define ALIGN_CENTER UITextAlignmentCenter
#endif

Swift 3

yourLabel.textAlignment = .center

This is depreciated now in iOS6.

You should use:

yourLabel.textAlignment = NSTextAlignmentCenter;

Besides using code, as Henrik suggested, you can also set the appropriate property in Interface Builder.


If you have a multiline UILabel you should use a NSMutableParagraphStyle

   label.numberOfLines = 0
   let paragraphStyle = NSMutableParagraphStyle()
   paragraphStyle.alignment = .Center

   let attributes : [String : AnyObject] = [NSFontAttributeName : UIFont(name: "HelveticaNeue", size: 15)!, NSParagraphStyleAttributeName: paragraphStyle]

   let attributedText = NSAttributedString.init(string: subTitleText, attributes: attributes)
   label.attributedText = attributedText