UILabel Вирівняти текст по центру


Відповіді:


568

З iOS 6 і пізніших версій UITextAlignmentзастаріло. використанняNSTextAlignment

myLabel.textAlignment = NSTextAlignmentCenter;

Версія Swift з iOS 6 та новіших версій

myLabel.textAlignment = .center

8
швидку версію можна спростити :) myLabel.textAlignment =. Центр
aryaxt

1
.center ← малі регістри
Лукас

83

Ось зразок коду, який показує, як вирівняти текст за допомогою UILabel:

label = [[UILabel alloc] initWithFrame:CGRectMake(60, 30, 200, 12)];
label.textAlignment = NSTextAlignmentCenter;

Більше про це можна прочитати тут, UILabel


27
UITextAlignmentзастаріло з iOS 5. Використовуйте NSTextAlignmentзамість цього.
Philip007

Невірно, UITextAligment застаріло. В UIStringDrawing.h (UIKit) ви можете знайти цей код:// Deprecated: use NSTextAlignment enum in UIKit/NSText.h typedef NS_ENUM(NSInteger, UITextAlignment) { UITextAlignmentLeft = 0, UITextAlignmentCenter, UITextAlignmentRight, // could add justified in future } NS_DEPRECATED_IOS(2_0,6_0);
aramusss

12

Для центрування тексту на UILabel у Swift (який орієнтований на iOS 7+) ви можете:

myUILabel.textAlignment = .Center

Або

myUILabel.textAlignment = NSTextAlignment.Center

8

Примітка: Згідно з посиланням на клас UILabel , станом на iOS 6 цей підхід тепер застарілий.

Просто використовуйте textAlignmentвластивість, щоб побачити необхідне вирівнювання, використовуючи одне із UITextAlignmentзначень. ( UITextAlignmentLeft, UITextAlignmentCenterАбо UITextAlignmentRight) .

наприклад: [myUILabel setTextAlignment:UITextAlignmentCenter];

Додаткову інформацію див. У довідці про клас UILabel .







0

У Swift 4.2 та Xcode 10

let lbl = UILabel(frame: CGRect(x: 10, y: 50, width: 230, height: 21))
lbl.textAlignment = .center //For center alignment
lbl.text = "This is my label fdsjhfg sjdg dfgdfgdfjgdjfhg jdfjgdfgdf end..."
lbl.textColor = .white
lbl.backgroundColor = .lightGray//If required
lbl.font = UIFont.systemFont(ofSize: 17)

 //To display multiple lines in label
lbl.numberOfLines = 0
lbl.lineBreakMode = .byWordWrapping

lbl.sizeToFit()//If required
yourView.addSubview(lbl)
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.