類我已經創建了一個單件類在目的C.類似下面:目標C的Singleton
@interface SingletonClass : NSObject{
NSMutableArray *instanceArray;
}
@property(nonatomic,retain)NSMutableArray *instanceArray;
+(SingletonClass*)sharedInstance;
@end
@implementation SingletonClass
@synthesize instanceArray;
static SingletonClass *sharedInstance =nil;
+(SingletonClass*)sharedInstance
{
if(sharedInstance==nil){
sharedInstance=[[super allocWithZone:NULL]init];
}
return sharedInstance;
}
-(id)init{
self=[super init];
if(self){
instanceArray=[[NSMutableArray alloc]init];
[instanceArray addObject:@"One"];
[instanceArray addObject:@"Two"];
}
return self;
}
+(id)allocWithZone:(NSZone *)zone{
return [self sharedInstance];
}
@end
我知道它可以從任何地方訪問用下面的代碼段:
SingletonClass *singletonObject=[SingletonClass sharedInstance];
而instanceArray可以通過singletonObject.instanceArray在任何地方訪問。
現在我的問題是,是否可以通過添加新對象來修改數組?這會持續嗎?因爲我試圖從一類
[singletonObject.instanceArray addObject:@"Three"];
添加對象,當我檢查從另一個類的數組的內容,該陣列包括只有兩個被默認情況下初始化的值。我從另一個班加入的價值沒有出現。 可能是什麼問題?我在這裏錯過了什麼嗎?請幫忙。
http://stackoverflow.com/questions/6324732/using-a-singleton-to-create-an-array-accessible-by-multiple-views –
如果可能,請格式化您的代碼。這很難閱讀。謝謝。 –