我需要在使用带有Objective c的Xcode加载视图时将值从ViewController传递到NSObject。
我正在使用下面的代码,但值为null。
-(void)viewDidAppear:(BOOL)animated
{
MyHomeModelNSObject *nsOb;
nsOb = [[MyHomeModelNSObject alloc] init];
nsOb.myString = self.userName.text;
}
上面的代码在使用segue时在Views之间工作,但在将值传递给NSObject时它不起作用。
由于
答案 0 :(得分:2)
上面的代码在使用segue时在Views之间工作,但在将值传递给NSObject时它不起作用。
你没有使用真实物体。您正在声明指向对象的指针,但从不分配对象本身:
MyHomeModelNSObject *nsOb;
nsOb.myString = self.userName.text;
请参阅?你错过了这一点:
nsOb = [[MyHomeModelNSObject alloc] init];
更重要的是,即使您添加了该对象,只要viewDidAppear
退出,对象就会被解除分配,因为它是一个局部变量。如果你想要它,你需要1)创建它,然后2)将它分配给你的视图控制器或另一个对象的某些属性。