2014-03-13 80 views
0

我一直对缺乏可扩展性感到沮丧类别给开发者。我无法重写getter或setter,更不用说定义新的属性。问题是:我可以完全控制UIKit吗?

“是否可以做这些事情没有子类化UIKit组件如UIView?”

子类别UIView也有其缺点。我无法强制子类为UIView(例如UIImageView)的UIKit的组件改为,而不是将我的UIView子类的子类。类别确实对我添加到UIView类中的内容起到了最好的作用,但我前面提到的限制对我的口味来说太过于限制。

任何帮助将是伟大的!

+0

你的问题太含糊。你试图完成什么? – rmaddy

+3

为了“挤出”更多的类别,你可能会发现这有帮助。 [link](http://oleb.net/blog/2011/05/faking-ivars-in-objc-categories-with-associative-references/)它通过Objective-C类别中的关联引用来讨论对象。 – Bamsworld

+1

这不是一个真正的UIKit问题;它更像是一个Objective-C问题。能够向任何物体注入任何东西都是非常棒的。但Objective-C不是Ruby;嗯,我想知道是否使用RubyMotion之类的东西会有帮助。 – matt

回答

0

没有回答如何做到这一点,可以参考我的interview with Loren Bricther

他建造了自己版本的用户界面框架,它位于正上方的iOS设备上的图形处理器软件 。苹果 创建开发人员 - 他完全没有必要 做到这一点。但这是他认为的“有趣”。

“这是疯了,”他承认。 “但我想尝试不同的驱动图形的方式......苹果的[UIKit]是最好的,但我想尝试。”实验取得了巨大的成功 - 现在有一百万只豚鼠通过凸版测试他的代码。而且,他说,他所建的“没有问题”。

所以这是可能的。 Letterpress就是这样构建的。

相关问题