【问题标题】:Why should I check for [self class] == [LevelAppDelegate class] in an initialize method?为什么我应该在初始化方法中检查 [self class] == [LevelAppDelegate class]?
【发布时间】:2009-05-06 09:20:58
【问题描述】:

在 Apple 的 BubbleLevel 示例的 AppDelegate 中,他们执行以下操作:

+ (void)initialize {
    if ([self class] == [LevelAppDelegate class]) {
        // Register a default value for the instrument calibration. 
        // This will be used if the user hasn't calibrated the instrument.
        NSNumber *defaultCalibrationOffset = [NSNumber numberWithFloat:0.0];
        NSDictionary *resourceDict = [NSDictionary dictionaryWithObject:defaultCalibrationOffset forKey:BubbleLevelCalibrationOffsetKey];
        [[NSUserDefaults standardUserDefaults] registerDefaults:resourceDict];
    }
}

他们为什么这样做 [self class] == [LevelAppDelegate class]?

【问题讨论】:

    标签: iphone cocoa-touch uikit


    【解决方案1】:

    【讨论】:

    • [self class] == [LevelAppDelegate class] 是否等同于 [self isMemberOfClass:[LevelAppDelegate class]]
    猜你喜欢
    • 2012-08-03
    • 1970-01-01
    • 2017-04-03
    • 2020-05-29
    • 1970-01-01
    • 2010-11-06
    • 2011-03-04
    • 1970-01-01
    • 2017-05-26
    相关资源
    最近更新 更多