Jak wyśrodkować tekst wewnątrz UILabel?
Odpowiedzi:
Kod jest
[yourLabel setTextAlignment:UITextAlignmentCenter];
lub (oczywiście) Dot-Syntax Obj-C 2.0
yourLabel.textAlignment = UITextAlignmentCenter;
W przypadku iOS 6 (i nowszych) NSTextAlignmentCenterzamiast UITextAlignmentCenter:
yourLabel.textAlignment = NSTextAlignmentCenter;
A jeśli chcesz kompatybilności wstecznej z iOS 5, możesz to zrobić,
#ifdef __IPHONE_6_0
# define ALIGN_CENTER NSTextAlignmentCenter
#else
# define ALIGN_CENTER UITextAlignmentCenter
#endif
Szybki 3
yourLabel.textAlignment = .center
Oprócz używania kodu, jak zasugerował Henrik, możesz także ustawić odpowiednią właściwość w Interface Builder.
Jeśli masz wielowierszowy UILabel, powinieneś użyć 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
Wypróbuj ten kod:
labelName.textAlignment = UITextAlignmentCenter
UITextAlignmentCenter jest przestarzałe, ponieważ NSTextAlignmentCenter od iOS 6,0. Zamiast tego powinieneś użyć NSTextAlignmentCenter:
[label setTextAlignment:NSTextAlignmentCenter];
Wypróbuj następujący kod:
lblObject.textAlignment=UITextAlignmentCenter;
Mam nadzieję, że to ci pomoże.