我正在尝试将通知放入数组中,但是当我推送新通知时,数组的计数会重置为1.
这是代码:
int r = 0;
listMsgReceived = [[NSMutableArray alloc] init];
if (notification)
{
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Notification received" message:[NSString stringWithFormat:@"%@", message] delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[alertView show];
[listMsgReceived insertObject:message atIndex:r];
r++;
NSLog(@"apres: %d \n", [listMsgReceived count]);
}
答案 0 :(得分:2)
每次收到通知时,您似乎都在初始化变量r
和listMsgReceived
(尽管从您提供的上下文中很难判断出来)。
你不应该这样做,因为每次你插入一个对象时都会得到一个 new 数组 - 因此每次通知后计数都是一个。
您可以尝试在方法之外移动数组初始化;将它声明为类的属性并在初始化程序中初始化它。