1

突っついていましたが、ここで答えを見つけることができませんでした:

drawInRectNSStringのメソッド(サブクラス化されたUIViewのdrawRectメソッド)を使用した結果のテキストの行数を計算/表示する簡単な方法はありますか?

たとえば、次のスニペットで:

    [self.text drawInRect:titleRect withFont:[UIFont systemFontOfSize:15.] lineBreakMode:UILineBreakModeWordWrap alignment:UITextAlignmentCenter];

ここで何行のテキストが表示されるかをどのように計算しますか?

ありがとう!

4

2 に答える 2

2

NSString sizeWithFont:constrainedToSize:lineBreakMode:この方法を使用してサイズを決定します。渡すCGSizeは、目的の幅と高さの値が非常に高い必要があります。

于 2012-10-24T22:06:13.147 に答える
-4

sizeWithFontはカスタムフォントでは正しく機能しないため、カスタム計算を行うことになりました。いくつかの初歩的ですが、機能する方法:

NSString *text = post.content;
int cntLB = [[text componentsSeparatedByCharactersInSet:[NSCharacterSet newlineCharacterSet]] count];
int numLines = [text length]/38+cntLB/2;

ここで、38 esは、テキストのwithに依存するしきい値パラメーターであり、cntLB/2は二重の\r\n文字を参照します。

于 2012-10-24T22:28:15.150 に答える