ビューコントローラーに何かをチェックさせたいのですが、それが真の場合はユーザーがビューコントローラーを使用できるようにし、偽の場合はユーザーにアラートを表示し、ユーザーを元の場所に送り返します。
だから私はこれを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:ビュー コントローラーをスタックにプッシュし、アラートを表示してから、ビュー コントローラーをスタックからポップしようとしています。
編集: コードを追加しました。