Center text in a UILabel
IphoneObjective CIphone Problem Overview
How do you center the text inside a UILabel?
Iphone Solutions
Solution 1 - Iphone
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;
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
Solution 2 - Iphone
This is depreciated now in iOS6.
You should use:
yourLabel.textAlignment = NSTextAlignmentCenter;
Solution 3 - Iphone
Besides using code, as Henrik suggested, you can also set the appropriate property in Interface Builder.
Solution 4 - Iphone
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
Solution 5 - Iphone
Try this code:
labelName.textAlignment = UITextAlignmentCenter
Solution 6 - Iphone
Try out the following code:
lblObject.textAlignment=UITextAlignmentCenter;
Hope this helps you.
Solution 7 - Iphone
UITextAlignmentCenter is deprecated since NSTextAlignmentCenter since iOS 6.0. You should use NSTextAlignmentCenter instead:
[label setTextAlignment:NSTextAlignmentCenter];
Solution 8 - Iphone
As of Xcode 10.2.1 use:
UIlabel.textAlignment = NSTextAlignment.center