gpt4 book ai didi

iOS:检查 coredata 对象是否仍然存在?

转载 作者:可可西里 更新时间:2023-11-01 06:23:11 26 4
gpt4 key购买 nike

我在使用两个不同的 View Controller 时遇到了问题。每个都在我的应用程序的标签栏中。一个 View Controller 影响另一个。在我的选项卡栏项目 1( View Controller 1)中,我编辑了我所有的数据库对象。您可以在那里添加、删除和编辑我的数据库中的实体。

在 View Controller 2 中,您可以选择这些实体并向这些实体添加子类别并编辑它们。但是,如果您在 View Controller 2 中的某个实体内,切换回 View Controller 1,删除该实体并切换回 View Controller 2,我的应用程序会崩溃。当然,因为这个 View Controller 的模型(刚刚删除的实体)已经不存在了。那么如何在我的 viewWillAppear 中检查它呢?这不起作用:

- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
if(!self.myEntity){
self.isNotExistingAnymore = YES;
NSLog(@"YES;");
}
}

最佳答案

NSManagedObject 有一个 isDeleted 方法返回 YES 如果对象已在托管对象上下文中标记为删除。

如果上下文已经被保存,那么这个对象实际上是从持久存储,然后它的 managedObjectContext 方法返回 nil

所以这涵盖了两种情况:

if (self.myObject.isDeleted || self.myObject.managedObjectContext == nil) ...

关于iOS:检查 coredata 对象是否仍然存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22310739/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com