【问题标题】:iphone development: is it possible to extend more than one viewControllers?iphone开发:是否可以扩展多个viewControllers?
【发布时间】:2013-01-08 13:45:55
【问题描述】:

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

【问题讨论】:

    标签: iphone objective-c ios uiviewcontroller glkit


    【解决方案1】:

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

    然后您可以手动跟踪视图:

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        【解决方案3】:

        不可能,objective-C 不支持多重继承。你应该看看这个问题:Objective-C multiple inheritance

        【讨论】:

          【解决方案4】:

          即使在允许的语言上扩展 2 个类也是非常糟糕的, 因为您可以通过两种方式获得“超级”,这是解决许多错误的一种方式

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2012-09-16
            • 2021-06-10
            • 1970-01-01
            • 1970-01-01
            • 2010-12-21
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多