0

我需要从用户输入文本字段或文本视图中获取文本。我制作了矩形并将文本绘制到矩形中。代码如下。

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

问题是如果用户输入的文本太长,[drawInRect] 只会像 ... 一样绘制或剪切句子的中间。如果用户输入长句子,我想制作双线,但如果很长,linebreakmode 似乎会忽略后面的文本。我需要做什么才能获得全文?

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 回答