将UILabel的基类UIView更改为自定义UIView?

时间:2014-03-25 13:53:03

标签: ios objective-c cocoa-touch uiview

众所周知UILabel的继承层次结构是:

UIView : UIResponder : NSObject

现在,我想将层次结构中的UIView更改为 自定义 UIView,如:

CustomView: UIResponder : NSObject

因此,我的应用中的所有UILabels都会在其继承层次结构中包含自定义 UIView

1 个答案:

答案 0 :(得分:2)

这是不可能的。

但是,您可以使用类别来扩展您的课程。 类别允许您向类添加方法,但不允许更改它们。 这是一个教程: http://www.tutorialspoint.com/objective_c/objective_c_categories.htm

根据您要实现的目标,继承UILable可能仍然是一个选项。你到底在做什么?

编辑:嗯,理论上可以在运行时期间查找对象的超类。但是,我不确定我是否真的应该向刚问过你问题的人推荐。它是相当先进的,如果可取的话,应该由那些确切知道他们在做什么的程序员来完成。 但是,请看这个问题和答案: My isa-swizzling breaks KVO Dynamically change an object's superclass