UILabelで長い文字を指定しても途中で切れてしまうので、自動的に改行してくれるようにしてみた。
以下、ソースコード
UILabel *label = [[UILabel alloc] initWithFrame:CGRectZero]; [label setFont[UIFont systemFontOfSize:11.f]]; [label setText:@"長い長い長い長い長い長い長い文字をここで指定する。"]; [label sizeToFit]; [label setLineBreakMode:NSLineBreakByWordWrapping]; [label setNumberOfLines:0]; [label setFrame:CGRectMake(0, 0, self.frame.size.width, label.frame.size.height)]; [label sizeToFit];
[self.view addSubview:label];
ポイントは、setLineBreakModeと、setNumberOfLines。あと、sizeToFit
sizeToFitは、setFrameの後で指定しないと、うまく改行されませんでした。
他にもUILabelの幅を計算して高さを算出する方法もあるようなので、そちらのほうがよければ、こちらなんかを参考に。