Я пытаюсь вертикально выровнять UITextView, установив соответствующее смещение содержимого.UITextView contentoffset update not working
Я звоню следующий код, когда я изменить текст моего TextView:
- (void)setCenterVerticalAlignmentForTextView:(UITextView*)textView {
CGFloat topCorrect = ([textView bounds].size.height - [textView contentSize].height * [textView zoomScale])/2.0;
topCorrect = (topCorrect < 0.0 ? 0.0 : topCorrect);
textView.contentOffset = CGPointMake(0,-topCorrect);
}
Это прекрасно работает в первый раз UIView отображается на экране.
Однако, если я изменил текст внутри textView и снова вызвал эту функцию, последняя строка функции, которая устанавливает contentOffset, кажется, не имеет никакого значения. Смещение содержимого становится (0,0) независимо от того, что я установил.
Должен ли я что-то сделать для сброса содержимогоОфис или контентИнструкция перед попыткой ее сброса?
Спасибо, ребята, любая помощь очень ценится.
Duncs
если это не поможет мне –
Спасибо, но это не исправить проблему. Этот метод вызывается только тогда, когда пользователь меняет текст в текстовом виде, и в этом случае он не является обновляемым пользователем текстом. Даже если это было вызвано, я не думаю, что он обращается к проблеме, когда contentOffset не выполняет сброс правильно. Спасибо, в любом случае. – theDuncs
, где будет вызываться эта функция, означающая viewdidload или view. –