ビューコントローラーに何かをチェックさせたいのですが、それが真の場合はユーザーがビューコントローラーを使用できるようにし、偽の場合はユーザーにアラートを表示し、ユーザーを元の場所に送り返します。
だから私はこれをif文の最後に追加しようとしましたviewDidLoad:
[self.navigationController popViewControllerAnimated:YES]
ただし、エラーが発生しました:
2014-08-09 20:12:59.731 ProjectName[1978:60b] ネストされたポップ アニメーションにより、ナビゲーション バーが破損することがある
2014-08-09 20:13:00.118 ProjectName[1978:60b] 予期しない状態でナビゲーション遷移を終了しています。ナビゲーション バーのサブビュー ツリーが破損する場合があります。
この StackOverflow の質問pushViewControllerから、または終了popViewController前の呼び出しviewDidLoadは安全ではないことを学びました。これを回避する方法はありますか?
TLDR:ビュー コントローラーをスタックにプッシュし、アラートを表示してから、ビュー コントローラーをスタックからポップしようとしています。
編集: コードを追加しました。