2017-10-28 9 views
-1

は、[これは私が財産を利用して別のViewControllerに1つのViewControllerのIVARの値にアクセスしようとした最初のViewController ][1]のコードfor.mクラスですが、私はnull値を取得しています。目的cのあるクラスのインスタンス変数を別のクラスにアクセスする方法は?

私のsecondviewcontrollerに値displaydを取得する方法を教えてください。

enter image description here

+0

コードを表示してください。 – pbasdf

+0

私が添付した画像を参照 –

+0

あなたのコードは、既存のインスタンスにアクセスするのではなく、プロパティ値がnilであるView Controllerの新しいインスタンスを作成しています。 – pbasdf

答えて

1

あなたは、プロパティの値を取得するための正しい方法を行っています。しかし、myStringinitの方法の値が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 puted、その中にコードを置くが、私はのviewDidLoadの何の呼び出し後にアプリを実行したときに起こります。..でものinitメソッドが –

+0

を呼び出していない私は、あまりにもinitメソッドを呼び出す必要がありませんしていましたview did load –

+0

'SecondViewController'の' myMetod'が呼び出されていることを確認する必要があります。私はあなたが 'myMetod'と呼ぶ場所を見ません – trungduc

関連する問題