在一个segue之后,NSManagedObject是否将自己设置为nil?

时间:2014-04-19 02:53:45

标签: ios objective-c core-data

我遵循教程如何使用核心数据,现在具体说明如何在核心日期更新。

所以我有一个简单的笔记应用程序,我想在用户点击表格视图中的单元格时更新核心数据(意味着他想要编辑现有笔记,而不是点击加号按钮来创建新笔记)

因此,他们在备注列表prepareForSegeue的教程中建议我创建一个创建注释视图控制器的实例并设置一个NSManagedObject实例并传递注释(我确实将NSManagedObject的属性添加到创建视图controller.h)并将它传递给它(作为NSManagedObject)。

像这样:

NSManagedObject *selectedNote = [self.notes objectAtIndex:[self.tableView indexPathForSelectedRow].row];
        destination.editNote = selectedNote;

当我保存数据时,我会执行此检查:

if (self.editNote) {
            [self.editNote setValue:self.myTextView.text forKey:@"content"];
        } else {

        // creating a new managed object
        NSManagedObject *newNote = [NSEntityDescription insertNewObjectForEntityForName:@"Note" inManagedObjectContext:context];
        [newNote setValue:self.myTextView.text forKey:@"content"];
        }

现在我的问题是,在将editedNote分配给创建视图控制器属性后,当我返回到备注列表时,它是否设置回nil

因为如果每次执行此检查时都没有:

if (self.editNote)

它不会没有...... 那么它每次如何知道它是否有不同的音符?

0 个答案:

没有答案