0

我正在使用 Magical Record 和我的核心数据模型,我基本上是在尝试计算商店中的所有实体,以便可以在 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);

现在我必须首先做一些正确的事情,否则不会显示一个数字,所以这里一定有我遗漏的东西。有任何想法吗?

4

1 回答 1

1

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

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

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

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

于 2013-11-01T02:51:30.217 回答