UILabelの中央のテキスト


回答:


197

コードは

[yourLabel setTextAlignment:UITextAlignmentCenter];

または(もちろん)Obj-C 2.0Dot-Syntax

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

スウィフト3

yourLabel.textAlignment = .center

2
または、ブラケットスープを少し減らします。yourLabel.textAlignment= UITextAlignmentCenter;
Peter DeWeese 2011年

11
UITextAlignmentCenterは、iOS6.0以降で非推奨になりました。ここでNSTextAlignmentCenterを使用します。
Dev2rights 2013年

3
また、textAlignmentを設定した後に[yourLabel sizeToFit]を呼び出すと、左揃えになり、textAlignmentプロパティが無視されることに注意してください。
DiscDev 2013年

26

これはiOS6で減価償却されています。

次を使用する必要があります。

yourLabel.textAlignment = NSTextAlignmentCenter;

6

コードを使用する以外に、Henrikが提案したように、InterfaceBuilderで適切なプロパティを設定することもできます。


1

複数行の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


0

UITextAlignmentCenterは、iOS6.0以降のNSTextAlignmentCenter以降非推奨になりました。代わりにNSTextAlignmentCenterを使用する必要があります。

[label setTextAlignment:NSTextAlignmentCenter];

0

次のコードを試してください。

lblObject.textAlignment=UITextAlignmentCenter;

これがお役に立てば幸いです。


0

Xcode 10.2.1の時点で、以下を使用します。

UIlabel.textAlignment = NSTextAlignment.center
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.