【发布时间】:2012-11-28 10:12:55
【问题描述】:
我使用 NSTimer 来更新 UITextView 中的文本,如果文本不再适合 UITextView 的大小,我还需要此 UITextView 向下滚动。 我一直在寻找答案,但它滚动得太慢了,文本正在更新,但您再也看不到它了,因为它滚动得太慢了。
这是每次 NSTimer 触发时调用的函数,即每 0.05 秒一次:
- (void)addLetters{
times++;
self.message.text = [message1 substringToIndex:times];
[self.message scrollRangeToVisible:NSMakeRange([self.message.text length] -1, 1)];
if(times == MAX){
[temp invalidate];
temp = nil;
}
}
每次执行时,我都会将字符串 message1 中的一个字母添加到 UITextView self.message
谢谢
【问题讨论】:
-
你有没有进一步减少延迟并检查过。?
-
是的,它滚动得更多,但文本更新速度很慢,而且更新时间太长。为什么是这样?滚动 uitextview 是一个非常耗时的方法,以至于在 NSTimer 触发之前没有时间这样做?