Center text in a UILabel

后端 未结 8 619
醉话见心
醉话见心 2021-02-03 16:39

How do you center the text inside a UILabel?

相关标签:
8条回答
  • 2021-02-03 16:59

    Try this code:

    labelName.textAlignment = UITextAlignmentCenter
    
    0 讨论(0)
  • 2021-02-03 17:07

    UITextAlignmentCenter is deprecated since NSTextAlignmentCenter since iOS 6.0. You should use NSTextAlignmentCenter instead:

    [label setTextAlignment:NSTextAlignmentCenter];
    
    0 讨论(0)
  • 2021-02-03 17:08

    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
    
    0 讨论(0)
  • 2021-02-03 17:09

    This is depreciated now in iOS6.

    You should use:

    yourLabel.textAlignment = NSTextAlignmentCenter;
    
    0 讨论(0)
  • 2021-02-03 17:11

    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
    
    0 讨论(0)
  • 2021-02-03 17:13

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

    0 讨论(0)
提交回复
热议问题