sizeWithAttributes:
UIOutletとかで、xibと連結しているUILabelのフォントサイズで、
ラベルの大きさかえたい時とかに使うと便利なのでメモ。
ローカライズとかで、ラベルに表示したい文言の長さがかわるから、横幅指定できないときとかに使う。
オートレイアウトしているときは、viewDidLayoutSubviewsとかに書かないと、
うまく反映してくれないので注意。
(多分viewDidLoadとかだと、その後にオートレイアウト当てられるためうまく行かない?)
NSStringのsizeWithFont:はdepricatedなので、sizeWithAttributes:を使う。
//self.labelは、プロパティでxibとoutletでつながっている事にします。 CGSize size = [self.label.text sizeWithAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:self.label.font.pointSize]}]; //sizeをlabelに適用 self.label.frame = CGRectMake(self.label.frame.origin.width,self.label.frame.origin.height,size.width,size.height);
ねむい!ちょっと確認してないんですがそのうち直します・・・。