我在scrollview中有自己动态更改的视图。
由于我的观点非常大,我通常只重绘它的可见部分。
但是当我向上或向下滚动时,没有调用drawRect方法。
我想滚动视图有一个缓冲区可以快速响应用户操作,但我不知道它是如何工作的确切机制。
UPD
感谢Wienke,我有一个解决方案:实现UIScrollViewDelegate。
我已经实现了scrollViewDidScroll方法:
-(void) scrollViewDidScroll:(UIScrollView *)sender {
CGRect visibleRect;
visibleRect.origin = [scrollView contentOffset];
visibleRect.size = [scrollView bounds].size;
[textField setNeedsDisplayInRect:visibleRect];
}
因此,每当用户滚动一点时,此方法就会重新绘制整个可见部分。那很糟糕=(
我怎样才能重绘...让我称之为“滚动后出现的新区域”。我想它会快得多......
感谢您的关注。
答案 0 :(得分:1)
您是否尝试过分配scrollview委托? UIScrollViewDelegate协议包含scrollViewDidEndDragging等方法,您可以在其上重绘。