限制字符/行在UITextView中使用TextView&的高度,宽度。字符的字体大小。

时间:2011-09-15 10:14:42

标签: iphone objective-c ios ipad uitextview

我在一个页面上有n个UITextViews,高度& UITextView的宽度分别为200 * 300(因不同的文本视图而异)。我需要限制最大值。用户可以在每个文本视图中输入的文本的行数/字符数取决于ht& TextView的宽度。我有需要在文本视图中输入的字符的字体大小。那么我该如何实现呢?

2 个答案:

答案 0 :(得分:0)

textfield number of lines:

If you are using iOS 3, you need to use the leading property:
int numLines = txtview.contentSize.height / txtview.font.leading;
If you are using iOS 4, you need to use the lineHeight property:
int numLines = txtview.contentSize.height / txtview.font.lineHeight;

答案 1 :(得分:0)

您可以做的是,您可以计算文本的高度,并且可能限制文本视图的高度和宽度。 现在,您可以比较文本高度和文本视图高度。并做任何你的要求。

计算文字高度: -

CGSize labelsize;
NSString *text=@"your text";
[textView setFont:[UIFont fontWithName:@"Helvetica"size:14]];
labelsize=[text sizeWithFont:textView.font constrainedToSize:CGSizeMake(280, 2000.0) lineBreakMode:UILineBreakModeWordWrap];
NSLog(@"%f",labelsize.height);
if(labelsize.height>300)
{
//show text with 300 height
}
else
{
//show full text
}