我有一个类 A(Listener),它在他的 init 方法中观察通知并实例化和膨胀 NSMutableArray
当 B 类(Sender)向 A 类的观察者发布通知时,它会正确调用在选择器中声明的方法,但在我的实例变量 NSMutableArray 指向 0x000000 的方法内
通知可能会在不同的类中运行吗?我可以解决购买声明 A 为单身人士的问题吗
@implementation ClassA
@synthesize myArray;
-(id) init {
if (self = [super init]){
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(methodThatGetsCalled:)
name:@"dispatchMethods"
object:nil];
classB = [[ClassB alloc] init];
}
return self;
}
- (void)anotherClassAMethod {
// first i populate my array
myArray = [[NSMutableArray alloc] initWithArray:eventsArray];
// than i call Class B
}
- (void)methodThatGetsCalled:(NSNotification)note {
// when the notification is posted, this method gets called but...
myArray; //points to 0x000000 here
}