在UILabel中居中文本

你如何在UILabel中的文本?

守则是

[yourLabel setTextAlignment:UITextAlignmentCenter]; 

或(当然)Obj-C 2.0点语法

 yourLabel.textAlignment = UITextAlignmentCenter; 

对于iOS 6(及更高版本),您应该使用NSTextAlignmentCenter而不是UITextAlignmentCenter

 yourLabel.textAlignment = NSTextAlignmentCenter; 

资源

如果你想向后兼容iOS 5也可以做到这一点,

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

Swift 3

 yourLabel.textAlignment = .center 

这在iOS6中已经贬值了。

你应该使用:

 yourLabel.textAlignment = NSTextAlignmentCenter; 

除了使用代码,正如Henrik所build议的那样,您还可以在Interface Builder中设置适当的属性。

如果你有一个多行UILabel你应该使用一个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 

试试这个代码:

 labelName.textAlignment = UITextAlignmentCenter 

自iOS 6.0以来,UITextAlignmentCenter已自NSTextAlignmentCenter弃用。 您应该使用NSTextAlignmentCenter:

 [label setTextAlignment:NSTextAlignmentCenter]; 

试试下面的代码:

 lblObject.textAlignment=UITextAlignmentCenter; 

希望这可以帮助你。