iPhone开发:是否有可能扩展多个viewControllers?

在我的应用程序中,我想使用googleAnalytics。 要使用它,我必须扩展GAITrackedViewController,但问题是我已经扩展了GLKViewController,因为我的视图有一个openGL应用程序。 那么是否有可能扩展两个视图控制器的属性?

对于类似的情况,我只是简单地创build了UIViewController的子类(GLKViewController)。 该子类处理视图的跟踪。 所有“特定的”ViewController扩展该自定义的UIViewController,而不是默认的。

那么你可以,例如,手动跟踪视图:

id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; [tracker sendView: NSStringFromClass(self.class)]; 

不,在Objective-C中没有多重inheritance。 你已经分别编写了GAITrackedViewController的子类和GLKViewController的一个子类,并且编写了一个控制器类,它具有这两个类的一个实例,并协调它们。

这是不可能的,Objective-C不支持多重inheritance。 你应该看看这个问题: Objective-C多重inheritance

甚至在允许的语言上扩展2个类也是非常糟糕的,因为你可以通过2种方法来获得你的“超级”,这是一个很多错误的方法