【问题标题】:How to Access instance Variable of one class to another class in objective c?如何在目标c中访问一个类的实例变量到另一个类?
【发布时间】:2018-04-09 21:01:05
【问题描述】:

我曾尝试通过使用属性将一个视图控制器的 IVAR 值访问到另一个视图控制器,但我得到的是空值。

请告诉我如何在我的 secondviewcontroller 中显示值。

【问题讨论】:

  • 显示您的代码。
  • 查看我附上的图片
  • 您的代码正在创建视图控制器的新实例(其中属性值为 nil),而不是访问现有实例。
  • 阅读this question 和众多答案。他们很好地解释了如何在 VC 之间传递数据。

标签: ios objective-c iphone uiviewcontroller


【解决方案1】:

您正在做正确的方法来获得财产的价值。但是您需要确保myString 已在ViewControllerinit 方法中分配了一个值。

在 ViewController.m 中尝试:

- (instancetype)init {
    self = [super init];

    if (self) {
        self.myString = @"My String";
    }

    return self;
}

除此之外,确保调用 SecondViewController 的 myMetod。如果调用myMetod,则会打印“打印值我的字符串”。

【讨论】:

  • 我已将(实例)init 放在 viewcontroller 的 viewdidload 方法之上并将代码放入其中,但是当我在调用 viewdidload 后运行应用程序时没有任何反应.. 甚至 init 方法也没有调用
  • 我是否也需要调用 init 方法来查看是否加载
  • 您需要确保调用了SecondViewControllermyMetod。我没看到你打电话给myMetod
  • 非常感谢我知道了
猜你喜欢
  • 2020-04-14
  • 1970-01-01
  • 2013-03-24
  • 2011-07-26
  • 1970-01-01
  • 2012-05-21
  • 2013-04-16
  • 1970-01-01
相关资源
最近更新 更多