将值从 ViewController 传递到 Objective-C 中的 NSObject

Passing value from ViewController to NSObject in Objective-C

我需要在使用 Xcode 和 Objective c 加载视图后立即将值从 ViewController 传递给 NSObject。

我正在使用下面的代码,但值为空。

-(void)viewDidAppear:(BOOL)animated
{
     MyHomeModelNSObject *nsOb;
     nsOb = [[MyHomeModelNSObject alloc] init];
     nsOb.myString = self.userName.text;
}

以上代码在使用 segue 时在视图之间工作,但在将值传递给 NSObject 时不起作用。

谢谢

The above code is working between Views when using segue, but it does not work with when passing the value to NSObject.

您使用的不是真实物体。您正在声明一个指向对象的指针,但从未分配对象本身:

MyHomeModelNSObject *nsOb;
nsOb.myString = self.userName.text;

看到了吗?你错过了你做的事:

nsOb = [[MyHomeModelNSObject alloc] init];

此外,即使您添加了它,该对象也会在 viewDidAppear 退出后立即被释放,因为它是一个局部变量。如果你想让它转手,你需要 1) 创建它,然后 2) 将它分配给你的视图控制器或另一个对象的某些 属性。