1

iPhoneでラップされたテキストのRectを決定するための良い方法を誰かが推奨できますか? 2.1 SDK の NSString の組み込みメソッドをすべて試しましたが、役に立ちませんでした。size メソッドは、折り返されたテキストがカスタム ビューに完全に収まるようなサイズを返すことはありません。

カスタムビューの制限内で常にできるだけ大きくする必要がある、ユーザーがカスタマイズ可能なテキストを描画しています。ラップされたテキストを特定の最大幅とフォント サイズで完全に囲むのに必要な四角形を決定できれば、テキストが切り取られることなくカスタム ビューを完全に埋めるのに十分な大きさになるまで、フォント サイズを増減できます。

どんな助けでも大歓迎です!

4

3 に答える 3

3

NSString の sizeWithFont:constrainedToSize: メソッドが役立つ場合があります。

CGSize sizeForText = [theText sizeWithFont:theFont constrainedToSize:CGSizeMake(myMaxWidth, 9999)];

あなたはすべてのサイズ方法を試したと言いましたが、あなたの説明に基づいて、探しているもののように聞こえます.

于 2008-10-07T19:29:06.687 に答える
0

UITextView の text プロパティを設定すると、その contentSize プロパティが更新されることがわかりました。これにより、テキスト ビューのフレームのサイズをスクロール ビュー内での表示などのために非常に簡単に変更できます。

于 2009-11-26T16:17:36.573 に答える
0

ビューのサイズがわかっているので、NSString の sizeWithFont:forWidth:lineBreakMode: を呼び出し、最小フォント サイズ、ビューの幅、および UILineBreakModeWordWrap から始めます。次に、返されたサイズがビューと同じ高さになるまで、フォント サイズを大きくします。

最大フォント サイズを設定する場合は、フォント サイズを大きくするのではなく、これをバイナリ検索として実装することもできます。

于 2008-10-07T19:38:28.867 に答える