我做了一个单身人士,我正在尝试将对象添加到self.timelineArray
,但我不能。当我这样做时,我有9个对象:
NSNumber* nmb = [[NSNumber alloc] initWithInt:1];
[self.dataManager.timelineArray addObject:nmb];
插入nmb
对象后,我仍有9个对象。
这是我的单身标题(只有重要位):
@interface DataManager : NSObject
@property (nonatomic, strong) NSMutableArray* timelineArray;
这是我的单例实现(只有重要的部分):
#import "DataManager.h"
static DataManager* sharedInstance = nil;
@implementation DataManager
+ (DataManager *) sharedInstance{
@synchronized(self)
{
if (sharedInstance == nil)
sharedInstance = [[self alloc] init];
}
return sharedInstance;
}
- (id)init {
if (self = [super init])
{
self.timelineArray = [[NSMutableArray alloc] init];
}
return self;
}
这只是简单的编码,我似乎无法弄清楚它为什么不起作用。
答案 0 :(得分:0)
我建议您添加以下内容
NSNumber* nmb = [[NSNumber alloc] initWithInt:1];
[[DataManager sharedInstance]timelineArray addObject:nmb];
这将始终添加到singleton
而不是instance
的{{1}}
答案 1 :(得分:0)
尝试修改不可变数组(NSArray)将导致这种情况。
替换
[responseObject objectForKey:@"timeline"]
与[[NSMutableArray alloc] initWithArray:[responseObject objectForKey:@"timeline"]
这是基于问题的评论。