试图获取核心数据存储中的总计数

时间:2013-10-31 23:37:26

标签: ios objective-c core-data magicalrecord

我正在使用魔法记录和我的核心数据模型,我基本上试图计算我商店中的所有实体,以便我可以在UILabel中显示它们;但是,由于某种原因,标签只显示2个条目,而事实上有多个条目。每次我创建一个新的,它基本上不会更新UILabel。这是我的代码:

NSNumber *count = [FinalRead MR_numberOfEntities];

    self.numberInbox = count;
    NSString* formattedNumber = [NSString stringWithFormat:@"Inbox(%@)", self.numberInbox];
    inboxLabel.text = formattedNumber;
    inboxLabel.textColor = [UIColor redColor];
    inboxLabel.shadowColor = [UIColor blackColor];
    inboxLabel.font = [UIFont fontWithName:@"Helvetica" size:14];
    inboxLabel.shadowOffset = CGSizeMake(0,1);

现在我必须先做正确的事情,否则一个数字就不会显示,所以我必须在这里找到一些东西。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

每当您创建新实体时,都需要更新inboxLabel(和您的状态变量numberInbox)的文本。您分配给inboxLabel.text的NSString不会自动更新 - 它将始终显示运行示例代码时的计数(numberInbox也不会自动更新)。

在创建新实体的代码后立即更新您的状态变量和inboxLabel文本:

self.numberInbox = [FinalRead MR_numberOfEntities];
NSString* formattedNumber = [NSString stringWithFormat:@"Inbox(%@)", self.numberInbox];
inboxLabel.text = formattedNumber;

(如果可以删除实体,也可以在删除代码后调用。)