2017-10-28 77 views
-1

[這是第一個視圖控制器的.m類的代碼][1]我曾嘗試通過使用屬性來訪問一個視圖控制器的IVAR值到另一個視圖控制器,但我得到空值。如何訪問一個類的實例變量到目標c中的另一個類?

請讓我知道如何在我的secondviewcontroller中獲得價值displayd。

enter image description here

+0

顯示您的代碼。 – pbasdf

+0

查看我附加的圖片 –

+0

您的代碼正在創建視圖控制器的新實例(其中屬性值爲零),而不是訪問現有實例。 – pbasdf

回答

1

你正在做正確的方式來獲得的屬性值。但是您需要確保myString已被分配init方法的值ViewController

嘗試在ViewController.m:

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

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

    return self; 
} 

旁邊的話,請確保SecondViewController的myMetod被調用。如果調用myMetod,則會打印「Print value My String」。

+0

我已經在ViewController的viewdidload方法之上調用了(實例)init,並且在其中放置了代碼,但是當我在調用viewdidload之後運行應用程序時什麼也沒有發生......甚至init方法不會調用 –

+0

我是否也需要調用init方法view did load –

+0

您需要確保調用'SecondViewController'的myMetod。我沒有看到你叫'myMetod'的地方 – trungduc

相關問題