重载方法(特别是drawRect :)没有子类化

时间:2009-10-27 02:11:30

标签: uiview overloading subclassing

我正在使用容器UIView来容纳UIImageView并进行一些自定义绘图。在这一点上,我想在我的子视图上做一些绘图。所以重写drawRect:在我的容器中,UIView只会在子视图下面绘制。

有没有办法重载drawRect:在我的子视图中没有子类化?

我认为方法调整可能是答案,但我希望不是。

(注意:是的,让UIView成为UIImageView的子视图会更聪明,但不幸的是我现在已经犯了我的错误。)

1 个答案:

答案 0 :(得分:0)

你确定你的意思是超载而不是覆盖吗?

重载 - 使用相同的基本名称但不同的参数创建一个新方法,因此可以通过向现有类添加包含新方法的新方法类别来实现。

覆盖 - 修改现有方法的行为 - 需要在运行时对类的方法表进行猴子修补(例如,通过调配)或子类化。