teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

コード修正

2016/04/03 09:25

投稿

TakeOne
TakeOne

スコア6299

answer CHANGED
@@ -3,7 +3,7 @@
3
3
  このため、myLabelがnilとなり、アンラップエラーになったのだと思います。
4
4
 
5
5
  新しいViewControllerを生成して、Storyboardで接続した部品をロードするには、ViewController2がStoryboardで読み込まれたものであれば
6
- `self.storyboard?.instantiateViewControllerWithIdentifier("指定画面のStoryboardID")`
6
+ `viewController = self.storyboard?.instantiateViewControllerWithIdentifier("指定画面のStoryboardID")`
7
7
  とすればよいです。
8
8
 
9
9
  ただ、ちょっと気になるのは、通常プロジェクトを作成するとViewControllerというのがデフォルトで作られ、それが最初にロードされるビューコントローラーになると思います。

1

誤字修正

2016/04/03 09:24

投稿

TakeOne
TakeOne

スコア6299

answer CHANGED
@@ -8,4 +8,4 @@
8
8
 
9
9
  ただ、ちょっと気になるのは、通常プロジェクトを作成するとViewControllerというのがデフォルトで作られ、それが最初にロードされるビューコントローラーになると思います。
10
10
  もしViewController2が、もともとViewControllerから呼び出されたもので、呼び出し元(ViewController)のmyLabelを参照したいということであれば、新しいViewControllerを生成するのではなく、呼び出し元のViewControllerを取得する必要があります。
11
- その方法は、コンテナ埋め込みしているならparentViewControllerを参照すればいいし、モーダル画面遷移しているならpresentingVieControllerを参照すればいいです。また、画面遷移方法によらない汎用的な方法としてdelegateを組み込む方法もあります。
11
+ その方法は、コンテナ埋め込みしているならparentViewControllerを参照すればいいし、モーダル画面遷移しているならpresentingViewControllerを参照すればいいです。また、画面遷移方法によらない汎用的な方法としてdelegateを組み込む方法もあります。