ルートビューコントローラAによってナビゲーションスタックにプッシュされるビューコントローラBがあります。このビューコントローラBは、モデルが特定の状態にあるので、別のビューコントローラCをモーダルに表示しています。ビューコントローラを閉じると、CIもビュースタックコントローラBをポップします。私は1つだけの移行があるようなやり方でそれをしたいと思います。ios:モーダルビューコントローラを解除してプッシュビューコントローラをポップする方法
アイデア?
ルートビューコントローラAによってナビゲーションスタックにプッシュされるビューコントローラBがあります。このビューコントローラBは、モデルが特定の状態にあるので、別のビューコントローラCをモーダルに表示しています。ビューコントローラを閉じると、CIもビュースタックコントローラBをポップします。私は1つだけの移行があるようなやり方でそれをしたいと思います。ios:モーダルビューコントローラを解除してプッシュビューコントローラをポップする方法
アイデア?
投稿したシナリオでは、ビューコントローラCのプレゼンテーションビューコントローラは実際にはナビゲーションコントローラになるため、Bをポップアップして拒否するように要求することができます。このコードは、ビューコントローラCにある:
-(IBAction)goBackToA:(id)sender {
[(UINavigationController *)self.presentingViewController popViewControllerAnimated:NO];
[self dismissViewControllerAnimated:YES completion:nil];
}
あなたはストーリーボードを使用している場合は、アンワインドセグエバックAに直接ジャンプし、これと同じことを行うことができます。
おかげで、 1つのビューコントローラとモデル状態に応じてそのサブビューを変更する場合、私は2つの別個のビューコントローラを使用する必要がある場合あなたのアプローチを試してみます – Heisenberg
正確に私が必要なもの! – Nerrolken
xibsやストーリーボードを使用してレイアウトをレイアウトしていますか?ルートビューコントローラ内の3次ビューをインスタンス化してサブビューとして追加するのが最善の策です。これらは表示または非表示にすることができます。これは、モーダルビューを表示したり消したりするよりもはるかに柔軟性があります。 – ninehundredt
私はストーリーボードを使用して、別の状態を表示するために独立したviewcontrollerを使用する方向に傾いていました。なぜなら、リンゴのマニュアルでは別のインタフェースを表示して別のインタフェースとして提示すると、別々のランドスケープビュー)。私が必要とする実際のUIの変更は、現在のビューで隠されていない別のビューを使って実装する方が簡単だと思うので、私はあなたの提案を試します – Heisenberg