2017-02-20 8 views
-1

2つのViewControllerと2つのクラスがあります。異なるクラス間でデータを渡すにはどうすればよいですか?

ViewController1には、ユーザーの電子メールID、パスワード、名、姓を含む辞書([String:String]タイプの 'data'という名前の)辞書があります。

ViewController2のクラスでこの「データ」辞書にアクセスし、さらにいくつかの要素(年齢と性別)を追加します。

データとセグにアクセスするためにViewController1クラスのインスタンスを作成することでこれを試みました。追加する前にコンソールに 'データ'辞書を印刷しているときに空になっていて、辞書に最新の要素(つまり、年齢と性別のみ)を追加した後に印刷していますか?

クラス間で辞書を渡すことで、空の辞書だけでなく要素も移動させることができますか?

+0

あなたの試行したコードを表示することができます – Ram

+0

[ViewController間でデータを渡す際のStackoverflowドキュメント](http://stackoverflow.com/documentation/ios/434/passing-data-between-view-controllers#t=201702200732185412699) )。 – NSNoob

+0

これは役に立ちます:http://stackoverflow.com/questions/5210535/passing-data-between-view-controllers – Priyal

答えて

0

はこれを試してみてください -

override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) { 
    if (segue.identifier == "segueName") { // your segue name 
     //get a reference to the destination view controller 
     let destinationVC = segue.destination as! FirstViewController 

     //set properties on the destination view controller 
     destinationVC.dict = data // 
     //etc... 
    } 
} 

注 - あなたの目的地のビューコントローラで変数を作成します。

+0

はい!プロパティ –

+0

私はこれを試しましたが、まだ2番目のViewControllerに入っている辞書が空の辞書として表示されています:/ –

+1

@AkshayYerneni dupe質問の答えに記述されている複数の方法を試してみると、またはドキュメンテーションについて?これは、実際にはこれを実行する1つの方法です。あなたがそれを動作させることができない場合、あなたのコードには何か問題があります。この答えではありません\ – NSNoob

関連する問題