如何在 UITextView 中获取文本矩形
Posted
技术标签:
【中文标题】如何在 UITextView 中获取文本矩形【英文标题】:How to get text rect in UITextView 【发布时间】:2014-04-18 12:21:31 【问题描述】:我遇到了 UItextView 中文本的获取框架,我正在使用此代码`
UITextPosition *Pos2 = [textView positionFromPosition: drawTextView.endOfDocument offset: 0];
UITextPosition *Pos1 = [textView positionFromPosition: drawTextView.endOfDocument offset: -[textView.text length]];
UITextRange *range = [textView textRangeFromPosition:Pos1 toPosition:Pos2];
CGRect result1 = [textView firstRectForRange:(UITextRange *)range ];
but it returns me
origin=(x=+Inf, y=+Inf) size=(width=0, height=0)`
【问题讨论】:
【参考方案1】:检查一下:
CGRect size = [myTextView.text boundingRectWithSize:CGSizeMake(textView.frame.size.width, Max_height)
options:NSStringDrawingUsesLineFragmentOrigin
attributes:attributesDictionary
context:nil];
NSLog(@"height : %@" size.height);
【讨论】:
【参考方案2】:您可以使用以下代码获取它
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
CGRect rc = [textView bounds];
rc = [textView convertRect:rc toView:superViewOfTextView];
.
.
.
//Put your logic.
对于获取文本宽度和高度使用
CGFloat width = [self.txtView.text length];
CGFloat height = [self.txtView.text sizeWithFont:setFontWithSize constrainedToSize:self.txtView.frame.size.width lineBreakMode:NSLineBreakByWordWrapping];
【讨论】:
我需要 UItextView 中文本的框架矩形。 你能告诉我如何获得 x 和 y。 @Suyash - 检查这个问题***.com/questions/16909843/…以上是关于如何在 UITextView 中获取文本矩形的主要内容,如果未能解决你的问题,请参考以下文章
Swift:在 UITextView 中使用占位符文本禁用空白/换行符文本的栏按钮