UILalelの設定を書いていきます。
目次
表示する文字列を設定する
UILabelのtextというプロパティを設定します。
表示する文字列を変更します。
[swift]
import UIKit
class FirstViewController : UIViewController {
@IBOutlet var label : UILabel!
override func viewDidLoad() {
super.viewDidLoad()
label.text = "ラベルにテキスト入力"
}
}
[/swift]
実行結果
文字色を設定する
UILabelのtextColorというプロパティを設定します。
以下は文字の色を赤に設定した場合です。
[swift]
import UIKit
class FirstViewController : UIViewController {
@IBOutlet var label : UILabel!
override func viewDidLoad() {
super.viewDidLoad()
label.text = "ラベルにテキスト入力"
label.textColor = UIColor.red
}
}
[/swift]
実行結果
行数を設定する
UILabelのnumberOfLinesというプロパティを設定します。
最大行数を設定できます。それ以上の行数を表示しようとすると省略されてしまいます。
また、0に設定すると無制限に表示する設定になります。
[swift]
import UIKit
class FirstViewController : UIViewController {
@IBOutlet var label : UILabel!
override func viewDidLoad() {
super.viewDidLoad()
label.backgroundColor = UIColor.orange
label.numberOfLines = 2
label.text = "ワタシ\nカツラ\nナノダ"
}
}
[/swift]
実行結果
numberOfLinesが2の時 |
---|
numberOfLinesが3の時 |
フォントサイズを変更する
UILabelのfontというプロパティを設定します。
UIFontクラスのsystemFontというメソッドに、表示したい文字の大きさを指定してあげればできます。
[swift]
import UIKit
class FirstViewController : UIViewController {
@IBOutlet var label : UILabel!
override func viewDidLoad() {
super.viewDidLoad()
label.backgroundColor = UIColor.orange
label.text = "みっしんぐぱわー!"
label.font = UIFont.systemFont(ofSize: 30)
}
}
[/swift]
実行結果
左寄せ、中央寄せ、右寄せにする
ラベルの中の文字列のalignmentを設定する。
UILabelのtextAlignmentというプロパティを設定します。
以下のようにそれぞれ設定できます。
左寄せ | NSTextAlignment.left |
---|---|
中央寄せ | NSTextAlignment.center |
右寄せ | NSTextAlignment.right |
以下は右寄せにした例です。
[swift]
import UIKit
class FirstViewController : UIViewController {
@IBOutlet var label : UILabel!
override func viewDidLoad() {
super.viewDidLoad()
label.text = "ラベルにテキスト入力"
label.backgroundColor = UIColor.red
label.textAlignment = NSTextAlignment.right
}
}
[/swift]
実行結果
表示する文字列の省略の仕方を設定する
UILabelの文字列がサイズの中に入りきらない時、どのように表示するかを設定できます。
どのように改行するかも選ぶことができます。
UILabelのlineBreakModeというプロパティを設定します。
以下のようにそれぞれ設定できます。
入りきらなくなったらそれ以降は表示しない | NSLineBreakMode.byClipping |
---|---|
一つのワードの途中で改行されないようにする(日本語は非対応?) | NSLineBreakMode.byWordWrapping |
ワードの途中であっても改行されるようにする(日本語は非対応?) | NSLineBreakMode.byCharWrapping |
左端の文字列を「…」で省略する | NSLineBreakMode.byTruncatingHead |
中央の文字列を「…」で省略する | NSLineBreakMode.byTruncatingMiddle |
右端の文字列を「…」で省略する | NSLineBreakMode.byTruncatingTail |
以下は一つのワードの途中で改行されないようにする例です。
[swift]
import UIKit
class FirstViewController : UIViewController {
@IBOutlet var label : UILabel!
override func viewDidLoad() {
super.viewDidLoad()
label.backgroundColor = UIColor.orange
label.numberOfLines = 0;
label.text = "We can look six like stars from the first magnitude. "
+ "the first magnitude is that big star. We can hardly look six like stars. "
+ "But they look smaller than they actually is because six like stars is "
+ "far from earth. In actually, six like stars may be more than ten times "
+ "as big as the first magnitude. Many people who isn’t shine like "
+ "six like stars exist in the world."
label.lineBreakMode = NSLineBreakMode.byClipping
}
}
[/swift]
実行結果
NSLineBreakMode.byClipping(表示しきれない部分は表示しない) |
---|
NSLineBreakMode.byWordWrapping(改行される位置が単語の終わりの部分) |
NSLineBreakMode.byCharWrapping(単語の途中でも改行がされる) |
以下は文字列の先頭を省略する例です。
[swift highlight=”11″]
import UIKit
class FirstViewController : UIViewController {
@IBOutlet var label : UILabel!
override func viewDidLoad() {
super.viewDidLoad()
label.backgroundColor = UIColor.orange
label.text = "みっしんぐぱわー!"
label.font = UIFont.systemFont(ofSize: 30)
label.lineBreakMode = NSLineBreakMode.byTruncatingHead
}
}
[/swift]
実行結果
NSLineBreakMode.byTruncatingHead |
---|
NSLineBreakMode.byTruncatingMiddle |
NSLineBreakMode.byTruncatingTail |