我试图建立一些iOS应用程序,同时学习,并有一些麻烦理解正确的方法来做到这一点。如何使用drawRect更新我的自定义UIView?
我目前有一个视图是UIView的子类。很明显,我想用它作为绘图表面。它会坐在别的东西之上,如描图纸。
用户应该能够点击一个点然后另一个点和一条线应该在2点之间画。我得到触摸数据,我有点,我可以从drawRect内部画东西:最初。
问题是我不知道以后如何更新内容。当一切都加载和drawRect:是calle,它会画一条线就好了。但是,如何根据用户正在做什么来绘制新东西或更改已绘制的东西。我知道我需要调用setNeedsDisplay,但不知道如何获取数据到视图来绘制东西。
我读过一堆教程/例子,他们都停在“覆盖drawRect:并画出一些东西......完成!”。如何将数据传递给视图以告诉它“嘿,重绘这些东西并添加这个新行”。
或者,我是否在谈论这一切错误的方式?
编辑: 我会尽力解释我的设置。
我有一个VC。在VC的视图中,我在底部有一个工具栏。该地区的其余部分被2个景观占用。一个是保存参考图像的图像视图。一个是自定义视图,清晰(描图纸),位于顶部。他们点击工具栏上的一个按钮,打开一个gesturerecognizer。他们点击屏幕,我收集点击数据,关闭gesturerecognizer和HOPEFULLY画一条线。除了绘图部分,我已经完成了所有工作。
你说你 “之分”。你如何储存它们? – 2011-05-31 21:51:48
CGPoints包含每个“行”的开始和停止的坐标位置。现在他们正在被风险投资持有。 – 2011-05-31 22:04:08