Backward compatibility of Xcode OSX

前端 未结 2 760
旧巷少年郎
旧巷少年郎 2020-12-19 19:48

How to use features such as viewDidLoad or appDidBecomeActive in Xcode 4.6.1 for OSX 10.8, which are available only for OSX 10.10 and above. Please

2条回答
  •  北荒
    北荒 (楼主)
    2020-12-19 19:55

    I'd override setView

    @interface MyViewController : NSViewController 
    @end
    
    @implementation MyViewController 
    - (void)setView:(NSView*)v {
        super.view = v;
        // if we're running on 10.8 or older…
        if (NSAppKitVersionNumber <= NSAppKitVersionNumber10_8) {
            [self viewDidLoad]; // call viewDidLoad (added in 10.9)
        }
    }
    @end
    

提交回复
热议问题