0

ユーザー入力のテキストフィールドまたはテキストビューからテキストを取得する必要があります。rectを作成し、rectにテキストを描画しました。コードは以下のとおりです。

CGRect a = CGRectMake(0,500,2400,100);
[textfield.text drawInRect:a 
                  withFont:font 
                  lineBreakMode:UILineBreakModeWordWrap 
                  alignment:UITextAlignmentLeft];         

問題は、ユーザーが長すぎるテキストを入力した場合、[drawInRect]は...のように描画するか、センテンスの中央をカットすることです。ユーザーが長いセンテンスを入力した場合は二重行にしたいのですが、改行モードは長い場合は次のテキストを無視するようです。全文を取得するにはどうすればよいですか?

4

1 に答える 1

2

これを行う:

 CGSize maximumSize = CGSizeMake(textfield.frame.size.width, 1000); //here 1000 for maximum height u can increase this if u want
 CGSize strSize = [textfield.text sizeWithFont:textfield.font constrainedToSize:maximumSize lineBreakMode:UILineBreakModeWordWrap];
 CGRect newframe = CGRectMake(0, 0, strSize.width, strSize.height);
 [textfield.text drawInRect:newframe 
                  withFont:textfield.font 
             lineBreakMode:UILineBreakModeWordWrap 
                 alignment:UITextAlignmentLeft];
于 2012-07-24T05:10:37.343 に答える