我在stackoverflow上读取了所有存在的解决方案,但是没有缺陷。
当我尝试使用动画滚动文本以定位时,在UITextView中出现问题。 滚动动画时,文本的上半部分会消失,但如果字体大小为15pt,则一切正常,但如果大约50pt则出现问题。
您可以在视频https://www.youtube.com/watch?v=EvIur672Q5k
上看到它我也尝试创建我自己的方法来动画滚动循环,每个循环移动偏移0.5pt它工作但这利用了太多的处理器,我无法控制动画时间,因为处理器超载。 https://www.youtube.com/watch?v=Kw5hx3YAdMw
我也尝试以编程方式创建UITextView,结果相同。
我尝试在具有线性曲线的部分上进行分割动画,但是摇动时动画非常难看。
- (IBAction) start{
_textView.scrollEnabled = NO;
_textView.scrollEnabled = YES;
UITextPosition *Pos2 = [_textView positionFromPosition: _textView.beginningOfDocument offset: 501];
UITextPosition *Pos1 = [_textView positionFromPosition: _textView.beginningOfDocument offset: 500];
UITextRange *range = [_textView textRangeFromPosition:Pos1 toPosition:Pos2];
CGRect result1 = [_textView firstRectForRange:(UITextRange *)range];
result1.origin.x=0;
[UIView animateWithDuration:2.0 delay:0.0 options:UIViewAnimationOptionCurveLinear animations:^{
_textView.contentOffset = result1.origin;
} completion:^(BOOL finished){
}];
}
答案 0 :(得分:1)
我相信你正在尝试这样做
- (IBAction)start:(id)sender {
_textView.scrollEnabled = NO;
_textView.scrollEnabled = YES;
NSRange bottom = NSMakeRange(_textView.text.length, 0);
[UIView animateWithDuration:2.0 delay:0.0 options:UIViewAnimationOptionCurveLinear animations:^{
[_textView scrollRangeToVisible:bottom];
} completion:nil];
}
这应该是文本长度的范围并滚动到它的底部。如果我误解了您的问题,请告诉我,我会尽力帮助
答案 1 :(得分:1)
我认为这不是你想要的,而是看here。也许你找到了解决方案。