0

私はストーリーボードベースのセットアップを使用しており、UIViewControllers のセットを追跡する UINavigationController を持っています...「ホーム画面」として機能する単一のメイン UIViewController があり、そこからすべてのアクティビティとタスクが分岐します。

現状では、特定のシナリオではルートView Controllerにポップし、いくつかのシナリオでは実際にそのルート「ホームスクリーン」View Controllerを指すセグエがあります。

ホームビューコントローラーに戻ってそこからセグエに移動すると、いくつかのクラッシュがポップアップするのを見てきました...エラーは

Could not find a navigation controller for segue 'xxx'. Push segues can only be used when the source controller is managed by an instance of UINavigationController.

...これは、ストーリーボードの周期的な性質が原因で発生する可能性がありますか? これらのセグエをホーム ビュー コントローラーに戻しても問題ありませんか? これにより、ホーム ビュー コントローラーの別のインスタンスが作成されますか? 代わりに常にルートにポップする必要がありますか?

4

1 に答える 1

1

いいえ、新しいインスタンスを作成するため、セグエ (アンワインド以外) を使用してコントローラーに「戻る」ことはできません。戻りたい場合は、ナビゲーション コントローラー ベースのアプリでアンワインド セグエまたは popToRootViewController (またはその他の pop メソッド) を使用する必要があります。

于 2013-11-15T05:24:54.253 に答える