【发布时间】:2015-02-09 18:54:28
【问题描述】:
这是一个初学者级别的问题。我继承了一个 iOS 项目,它是用一些带有相关 XIB 文件的 ViewController 实现的。 XIB 文件包含由 ViewControllers 中的代码控制的各种小部件(我认为这是构建应用程序的标准方式)。
但是,我需要在小部件之间进行一些自定义绘图(矩形、线条、圆圈、文本),并且我想使用 Quartz 2D 库来执行此操作。我从未使用过 Quartz2D,而且我发现的大多数示例代码都以 View 为中心,而不是 ViewController。
其中大部分似乎与实现视图的“drawRect”方法有关。但是,据我所知,我的 ViewController 没有“drawRect”功能。有没有办法在我的 ViewController 或它控制的任何 View 上实现“drawRect”功能?
*** 附录: 我研究并提醒自己,可操作的 UIView 是 UIViewController 的一个属性,看起来 UIView 是由应用程序自动创建的,并与我的 XIB 和 ViewController 捆绑在一起(我想我们在创建时选择了“也创建 XIB”一个 ViewController,所以 UIView 是隐含的?)。我看不到这个默认的 UIView 实例化发生在哪里。但是我认为绘制它的方法是对其进行子类化?
如果是这样,在保持与现有 ViewController 和 XIB(或情节提要)的连接的同时,继承此 UIView 并访问 drawRect 的最干净方法是什么?我继承了这个项目,这个改变需要是低影响的。
感谢您的任何帮助/想法。
【问题讨论】:
标签: ios iphone quartz-graphics