CGRect метода firstRectForRange в UITextView возвращает неправильную позицию кадра в iOS 9
Выполнение приведенного ниже кода в iPod 5 / iPad с iOS 8 и iOS 9 дает следующий вывод
CGRect textViewFrame;
if(IS_IPHONE_5)
textViewFrame = CGRectMake(0.0f, 64.0f, 320.0f, 390.0f);
else
textViewFrame = CGRectMake(0.0f, 64.0f, 320.0f, 320.0f);
textViewText = [[UITextView alloc] initWithFrame:textViewFrame];
textViewText.returnKeyType = UIReturnKeyDone;
textViewText.delegate = self;
textViewText.backgroundColor = [UIColor clearColor];
[self.view addSubview:textViewText];
[self.textViewText setFont:[UIFont fontWithName:@"PT Mono" size:16]];
[self.textViewText setTextColor:[UIColor colorWithRed:32.0f/255.0f green:32.0f/255.0f blue:32.0f/255.0f alpha:1]];
UITextPosition *beginning = textView.beginningOfDocument;
UITextPosition *start = [textView positionFromPosition:beginning offset:range.location];
UITextPosition *end = [textView positionFromPosition:start offset:range.length];
UITextRange *textRange = [textView textRangeFromPosition:start toPosition:end];
CGRect rect = [textView firstRectForRange:textRange];
rect.size.width = rect.size.width + 2;
rect.origin.x = rect.origin.x - 1;
return [textView convertRect:rect fromView:textView.textInputView];
CGRect rect = [textView firstRectForRange: textRange]; // Проблема здесь
Вывод iOS 8: {x=0, y=201, ширина =50, высота =19}
Вывод iOS 9: {x=0, y=293, ширина =50, высота = 19.4}
Y кординат и высота изменена в iOS 9
Что-нибудь изменилось в UITextView?