2011-09-07 126 views
0

我有一个名为RootModel的类。在RootModel.h我:[RootModel setAppLevel:]:发送到实例的无法识别的选择器

@interface RootModel : NSObject { 
    NSString *appLevel; 
} 
@property(nonatomic, retain) NSString *appLevel; 

In RootModel.m I have the following: 

#import "RootModel.h" 
#import "MainViewController.h" 
@implementation RootModel 
@synthesize appLevel; 
#pragma mark Singleton Methods 

static RootModel *sharedObject = nil; 

+(id)sharedModel { 
    @synchronized(self){ 
     if(sharedObject == nil) 
      sharedObject = [[super allocWithZone:NULL] init]; 

    } 
    return sharedObject; 
} 

in MainViewController.m I have: 
RootModel *rm = [RootModel sharedModel]; 
rm.appLevel = @"0"; 

最后一句给我[RootModel setAppLevel:]:无法识别的选择发送到实例。 应该指出的是,一切工作正常与上述代码。我的项目不知何故被损坏,我使用这些文件建立了一个新项目,现在我得到这个错误。 感谢您的帮助。

回答

0
在RootModel.h

@class MainViewController;//note Here 

@interface RootModel : NSObject { 

     NSString *appLevel; 

} 

@property(nonatomic, retain) NSString *appLevel; 

+(id)sharedModel;//Note Here 

@end 

你可能已经忘记了这个方法

+ (id)allocWithZone:(NSZone *)zone { 

    return [[self sharedManager] retain]; 

} 

看看this

+0

我已经有了。此代码在之前工作并在将文件复制到新项目后开始出现此错误。 – saman01

+0

更新代码............ –

相关问题