フレームの高さを十分に高くすると、適切にワードラップされる UILabel があります。ただし、適切な高さを動的に見つけたいのですが、sizeWithFont
メソッドはこれを行っていません。そのメソッドは、ラベルに 1 行を作成するだけです。
CGSize subtitleSize=[subtitle sizeWithFont:subtitleFont forWidth:maxwidth lineBreakMode:UILineBreakModeWordWrap];
次に、この関数と同じテキスト、フォント、サイズを使用します。
UILabel *subLabel=[[[UILabel alloc] initWithFrame:CGRectMake(0, 0, maxwidth, subtitleSize.height)]autorelease];
subLabel.font=subtitleFont;
subLabel.text=subtitle;
subLabel.numberOfLines=0;
subLabel.lineBreakMode=UILineBreakModeWordWrap;
それはすべて機能し、私が使用するサイズを私に与えるはずです。ただし、サイズの高さは常にラベルの 1 行です。