2017-04-27 7 views
0

UILabelのボタンをクリックして更新したいと考えています。ContainerViewのボタンにはテーブルViewControllerが含まれています。私がこれをしようとするとUILabel'sアウトレット参照にはnil値の例外が示されます。私はXcode8でSwift3を使用しています別のコントローラからUIを更新する

+2

あなたのコードとそれがクラッシュしている行を投稿できますか? – redent84

+0

あなたは別のビューコントローラにあるuilabelのいくつかの変更を行いたいと思います。この場合、この問題は発生します。そのビューはビュー階層にありません。あなたの問題を解決するには、あなたのラベルにアクセスする。 var v = yourViewController.view –

答えて

2

おそらくあなたが見ている問題は、別のView Controllerでこのラベルを所有するビューがまだロードされていないためです。
これは、ビューコントローラーが所有するビューが遅延してインスタンス化されるため、必要なときにのみロードされることを意味します。ラベルに値を設定する前に、同じような何かを行うことによってビューをプリロードすることを修正するには
。このようにして

_ = another_viewcontroller_instance.view 

あなたはビューをロードするために先ビュー・コントローラを強制し、XIBに必要なすべての接続を作成しています。
この修正が機能しても、これは(VCから別のものに情報を送信する)この種のパターンを処理する良い方法ではありませんが、私たちにこれ以上の詳細を教えてくれなかったので、これが私の唯一の解決方法です。

関連する問題