iOS:文本视图中的可见文本范围

时间:2013-09-23 10:29:51

标签: ios objective-c uitextview range visible

我使用以下代码来确定文本视图中可以容纳多少文本而无需滚动。它适用于iOS 6,但它不适用于iOS 7.文本视图有效(不是零),文本视图中有文本,但开始和结束都是零。任何帮助将不胜感激。

-(NSRange)visibleRangeOfTextView:(UITextView *)textView {
    CGRect bounds = textView.bounds;
    UITextPosition *start = [textView characterRangeAtPoint:bounds.origin].start;
    UITextPosition *end = [textView     characterRangeAtPoint:CGPointMake(CGRectGetMaxX(bounds), CGRectGetMaxY(bounds))].end;

    NSRange range = NSMakeRange([textView offsetFromPosition:textView.beginningOfDocument toPosition:start],
                            [textView offsetFromPosition:start toPosition:end]);
    return range;
}

1 个答案:

答案 0 :(得分:1)

为textView设置contentInset,

[textView setContentInset:UIEdgeInsetsMake(-45, 0, 5,0)];