Objective c 委托调用中丢失属性地址

Objective c 委托调用中丢失属性地址,objective-c,ios,delegates,Objective C,Ios,Delegates,您好,我使用的UITableViewController具有@属性(保留,非原子)NSString*名称从上一个ViewController填充。它有一个UITextField,在视图上显示一个delegate=self,我设置了字段的文本。一切都很好的工作 但是在-(BOOL)textField应该返回:(UITextField*)textField中,我得到了一个指向self.name的零指针 是否有一些关于线程我不太了解的东西,所以这可能是问题的根源 编辑: 我从两个不同的Navigati

您好,我使用的UITableViewController具有
@属性(保留,非原子)NSString*名称从上一个ViewController填充。它有一个UITextField,在视图上显示一个
delegate=self
,我设置了字段的文本。一切都很好的工作

但是在
-(BOOL)textField应该返回:(UITextField*)textField
中,我得到了一个指向self.name的零指针

是否有一些关于线程我不太了解的东西,所以这可能是问题的根源

编辑:


我从两个不同的NavigationController调用了TableViewController。一个有效,另一个无效。我只在其中一个地方发现了虫子。对名称的引用来自另一个NavigationController…

我从两个不同的NavigationController调用了TableViewController。一个有效,另一个无效。我只在其中一个地方发现了虫子。对名称的引用来自另一个NavigationController…

我们可以看到
-(BOOL)textField shouldReturn:(UITextField*)textField
的代码吗?您在哪里接收到零指针?您是否在任何时候都将self.name设置为零?对于
NSString
您通常使用
copy
not
retain
在dealoc self.name设置为nil,我需要的是引用而不是复制的对象。我们可以看到
-(BOOL)textField的代码应该返回:(UITextField*)textField
您接收nil指针的位置吗?您是否在任何时候都将self.name设置为零?对于
NSString
您通常在解除锁定时使用
copy
not
retain
。name设置为nil,我需要的是引用,而不是复制的对象
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
 self.title = textField.text;
 self.name = textField.text;  //Brakepoint self.name == nil
 [textField resignFirstResponder];
 return NO;
}