我正在考虑子类化UIScrollView(UITextView的方式)来绘制相当大量的文本(格式化为NSTextView不能的格式)。
到目前为止,视图实际上不会滚动。我正在设置contentSize,当我拖动时,我会看到滚动指示器。但没有任何改变(我没有得到drawRect:消息)。
另一种方法是使用子视图,我已经这样做了。但是,视图的高度可能超过5000像素,我对实际设备的性能有点担心。
(另一种方法,就像UITableView,将是一个巨大的痛苦 - 我正在“移植”Mac Cocoa代码,一系列视图将是一个巨大的架构变化。)
我做了一些搜索,但没有找到任何使用UIScrollView进行绘图的人。有没有人这样做,知道任何陷阱?
答案 0 :(得分:2)
当用户滚动时,UIScrollView所做的就是更新其边界矩形,这会导致滚动视图子视图移动。您可以尝试将滚动视图的contentMode
设置为UIViewContentModeRedraw
。来自文档:
UIViewContentModeRedraw
通过调用setNeedsDisplay方法在边界更改时重新显示视图。